YES 8.026
H-Termination proof of /home/matraf/haskell/eval_FullyBlown_Fast/FiniteMap.hs
H-Termination of the given Haskell-Program with start terms could successfully be proven:
↳ HASKELL
↳ LR
mainModule FiniteMap
| ((elemFM :: Ord b => Maybe b -> FiniteMap (Maybe b) a -> Bool) :: Ord b => Maybe b -> FiniteMap (Maybe b) a -> Bool) |
module FiniteMap where
| import qualified Maybe import qualified Prelude
|
| data FiniteMap b a = EmptyFM | Branch b a Int (FiniteMap b a) (FiniteMap b a)
|
| instance (Eq a, Eq b) => Eq (FiniteMap a b) where
|
|
(==) | fm_1 fm_2 | = | sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2 |
|
|
| elemFM :: Ord b => b -> FiniteMap b a -> Bool
elemFM | key fm | = |
case | lookupFM fm key of |
| Nothing | -> | False |
| Just elt | -> | True |
|
|
| fmToList :: FiniteMap b a -> [(b,a)]
fmToList | fm | = | foldFM (\key elt rest ->(key,elt) : rest) [] fm |
|
| foldFM :: (c -> a -> b -> b) -> b -> FiniteMap c a -> b
foldFM | k z EmptyFM | = | z |
foldFM | k z (Branch key elt _ fm_l fm_r) | = | foldFM k (k key elt (foldFM k z fm_r)) fm_l |
|
| lookupFM :: Ord b => FiniteMap b a -> b -> Maybe a
lookupFM | EmptyFM key | = | Nothing |
lookupFM | (Branch key elt _ fm_l fm_r) key_to_find | |
| | key_to_find < key | = |
lookupFM fm_l key_to_find |
|
| | key_to_find > key | = |
lookupFM fm_r key_to_find |
|
| | otherwise | = |
|
|
|
| sizeFM :: FiniteMap b a -> Int
sizeFM | EmptyFM | = | 0 |
sizeFM | (Branch _ _ size _ _) | = | size |
|
module Maybe where
| import qualified FiniteMap import qualified Prelude
|
Lambda Reductions:
The following Lambda expression
\keyeltrest→(key,elt) : rest
is transformed to
fmToList0 | key elt rest | = (key,elt) : rest |
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
mainModule FiniteMap
| ((elemFM :: Ord a => Maybe a -> FiniteMap (Maybe a) b -> Bool) :: Ord a => Maybe a -> FiniteMap (Maybe a) b -> Bool) |
module FiniteMap where
| import qualified Maybe import qualified Prelude
|
| data FiniteMap a b = EmptyFM | Branch a b Int (FiniteMap a b) (FiniteMap a b)
|
| instance (Eq a, Eq b) => Eq (FiniteMap a b) where
|
|
(==) | fm_1 fm_2 | = | sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2 |
|
|
| elemFM :: Ord b => b -> FiniteMap b a -> Bool
elemFM | key fm | = |
case | lookupFM fm key of |
| Nothing | -> | False |
| Just elt | -> | True |
|
|
| fmToList :: FiniteMap a b -> [(a,b)]
fmToList | fm | = | foldFM fmToList0 [] fm |
|
|
fmToList0 | key elt rest | = | (key,elt) : rest |
|
| foldFM :: (c -> b -> a -> a) -> a -> FiniteMap c b -> a
foldFM | k z EmptyFM | = | z |
foldFM | k z (Branch key elt _ fm_l fm_r) | = | foldFM k (k key elt (foldFM k z fm_r)) fm_l |
|
| lookupFM :: Ord b => FiniteMap b a -> b -> Maybe a
lookupFM | EmptyFM key | = | Nothing |
lookupFM | (Branch key elt _ fm_l fm_r) key_to_find | |
| | key_to_find < key | = |
lookupFM fm_l key_to_find |
|
| | key_to_find > key | = |
lookupFM fm_r key_to_find |
|
| | otherwise | = |
|
|
|
| sizeFM :: FiniteMap a b -> Int
sizeFM | EmptyFM | = | 0 |
sizeFM | (Branch _ _ size _ _) | = | size |
|
module Maybe where
| import qualified FiniteMap import qualified Prelude
|
Case Reductions:
The following Case expression
case | lookupFM fm key of |
| Nothing | → False |
| Just elt | → True |
is transformed to
elemFM0 | Nothing | = False |
elemFM0 | (Just elt) | = True |
The following Case expression
case | compare x y of |
| EQ | → o |
| LT | → LT |
| GT | → GT |
is transformed to
primCompAux0 | o EQ | = o |
primCompAux0 | o LT | = LT |
primCompAux0 | o GT | = GT |
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
mainModule FiniteMap
| ((elemFM :: Ord b => Maybe b -> FiniteMap (Maybe b) a -> Bool) :: Ord b => Maybe b -> FiniteMap (Maybe b) a -> Bool) |
module FiniteMap where
| import qualified Maybe import qualified Prelude
|
| data FiniteMap a b = EmptyFM | Branch a b Int (FiniteMap a b) (FiniteMap a b)
|
| instance (Eq a, Eq b) => Eq (FiniteMap a b) where
|
|
(==) | fm_1 fm_2 | = | sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2 |
|
|
| elemFM :: Ord b => b -> FiniteMap b a -> Bool
elemFM | key fm | = | elemFM0 (lookupFM fm key) |
|
|
elemFM0 | Nothing | = | False |
elemFM0 | (Just elt) | = | True |
|
| fmToList :: FiniteMap a b -> [(a,b)]
fmToList | fm | = | foldFM fmToList0 [] fm |
|
|
fmToList0 | key elt rest | = | (key,elt) : rest |
|
| foldFM :: (b -> a -> c -> c) -> c -> FiniteMap b a -> c
foldFM | k z EmptyFM | = | z |
foldFM | k z (Branch key elt _ fm_l fm_r) | = | foldFM k (k key elt (foldFM k z fm_r)) fm_l |
|
| lookupFM :: Ord b => FiniteMap b a -> b -> Maybe a
lookupFM | EmptyFM key | = | Nothing |
lookupFM | (Branch key elt _ fm_l fm_r) key_to_find | |
| | key_to_find < key | = |
lookupFM fm_l key_to_find |
|
| | key_to_find > key | = |
lookupFM fm_r key_to_find |
|
| | otherwise | = |
|
|
|
| sizeFM :: FiniteMap a b -> Int
sizeFM | EmptyFM | = | 0 |
sizeFM | (Branch _ _ size _ _) | = | size |
|
module Maybe where
| import qualified FiniteMap import qualified Prelude
|
If Reductions:
The following If expression
if primGEqNatS x y then Succ (primDivNatS (primMinusNatS x y) (Succ y)) else Zero
is transformed to
primDivNatS0 | x y True | = Succ (primDivNatS (primMinusNatS x y) (Succ y)) |
primDivNatS0 | x y False | = Zero |
The following If expression
if primGEqNatS x y then primModNatS (primMinusNatS x y) (Succ y) else Succ x
is transformed to
primModNatS0 | x y True | = primModNatS (primMinusNatS x y) (Succ y) |
primModNatS0 | x y False | = Succ x |
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
mainModule FiniteMap
| ((elemFM :: Ord a => Maybe a -> FiniteMap (Maybe a) b -> Bool) :: Ord a => Maybe a -> FiniteMap (Maybe a) b -> Bool) |
module FiniteMap where
| import qualified Maybe import qualified Prelude
|
| data FiniteMap a b = EmptyFM | Branch a b Int (FiniteMap a b) (FiniteMap a b)
|
| instance (Eq a, Eq b) => Eq (FiniteMap a b) where
|
|
(==) | fm_1 fm_2 | = | sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2 |
|
|
| elemFM :: Ord a => a -> FiniteMap a b -> Bool
elemFM | key fm | = | elemFM0 (lookupFM fm key) |
|
|
elemFM0 | Nothing | = | False |
elemFM0 | (Just elt) | = | True |
|
| fmToList :: FiniteMap b a -> [(b,a)]
fmToList | fm | = | foldFM fmToList0 [] fm |
|
|
fmToList0 | key elt rest | = | (key,elt) : rest |
|
| foldFM :: (c -> b -> a -> a) -> a -> FiniteMap c b -> a
foldFM | k z EmptyFM | = | z |
foldFM | k z (Branch key elt _ fm_l fm_r) | = | foldFM k (k key elt (foldFM k z fm_r)) fm_l |
|
| lookupFM :: Ord a => FiniteMap a b -> a -> Maybe b
lookupFM | EmptyFM key | = | Nothing |
lookupFM | (Branch key elt _ fm_l fm_r) key_to_find | |
| | key_to_find < key | = |
lookupFM fm_l key_to_find |
|
| | key_to_find > key | = |
lookupFM fm_r key_to_find |
|
| | otherwise | = |
|
|
|
| sizeFM :: FiniteMap a b -> Int
sizeFM | EmptyFM | = | 0 |
sizeFM | (Branch _ _ size _ _) | = | size |
|
module Maybe where
| import qualified FiniteMap import qualified Prelude
|
Replaced joker patterns by fresh variables and removed binding patterns.
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
mainModule FiniteMap
| ((elemFM :: Ord a => Maybe a -> FiniteMap (Maybe a) b -> Bool) :: Ord a => Maybe a -> FiniteMap (Maybe a) b -> Bool) |
module FiniteMap where
| import qualified Maybe import qualified Prelude
|
| data FiniteMap a b = EmptyFM | Branch a b Int (FiniteMap a b) (FiniteMap a b)
|
| instance (Eq a, Eq b) => Eq (FiniteMap b a) where
|
|
(==) | fm_1 fm_2 | = | sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2 |
|
|
| elemFM :: Ord a => a -> FiniteMap a b -> Bool
elemFM | key fm | = | elemFM0 (lookupFM fm key) |
|
|
elemFM0 | Nothing | = | False |
elemFM0 | (Just elt) | = | True |
|
| fmToList :: FiniteMap a b -> [(a,b)]
fmToList | fm | = | foldFM fmToList0 [] fm |
|
|
fmToList0 | key elt rest | = | (key,elt) : rest |
|
| foldFM :: (c -> b -> a -> a) -> a -> FiniteMap c b -> a
foldFM | k z EmptyFM | = | z |
foldFM | k z (Branch key elt vw fm_l fm_r) | = | foldFM k (k key elt (foldFM k z fm_r)) fm_l |
|
| lookupFM :: Ord a => FiniteMap a b -> a -> Maybe b
lookupFM | EmptyFM key | = | Nothing |
lookupFM | (Branch key elt vx fm_l fm_r) key_to_find | |
| | key_to_find < key | = |
lookupFM fm_l key_to_find |
|
| | key_to_find > key | = |
lookupFM fm_r key_to_find |
|
| | otherwise | = |
|
|
|
| sizeFM :: FiniteMap b a -> Int
sizeFM | EmptyFM | = | 0 |
sizeFM | (Branch vy vz size wu wv) | = | size |
|
module Maybe where
| import qualified FiniteMap import qualified Prelude
|
Cond Reductions:
The following Function with conditions
lookupFM | EmptyFM key | = Nothing |
lookupFM | (Branch key elt vx fm_l fm_r) key_to_find |
| | key_to_find < key |
= | lookupFM fm_l key_to_find |
|
| | key_to_find > key |
= | lookupFM fm_r key_to_find |
|
| | otherwise | |
|
is transformed to
lookupFM | EmptyFM key | = lookupFM4 EmptyFM key |
lookupFM | (Branch key elt vx fm_l fm_r) key_to_find | = lookupFM3 (Branch key elt vx fm_l fm_r) key_to_find |
lookupFM0 | key elt vx fm_l fm_r key_to_find True | = Just elt |
lookupFM1 | key elt vx fm_l fm_r key_to_find True | = lookupFM fm_r key_to_find |
lookupFM1 | key elt vx fm_l fm_r key_to_find False | = lookupFM0 key elt vx fm_l fm_r key_to_find otherwise |
lookupFM2 | key elt vx fm_l fm_r key_to_find True | = lookupFM fm_l key_to_find |
lookupFM2 | key elt vx fm_l fm_r key_to_find False | = lookupFM1 key elt vx fm_l fm_r key_to_find (key_to_find > key) |
lookupFM3 | (Branch key elt vx fm_l fm_r) key_to_find | = lookupFM2 key elt vx fm_l fm_r key_to_find (key_to_find < key) |
lookupFM4 | EmptyFM key | = Nothing |
lookupFM4 | vvu vvv | = lookupFM3 vvu vvv |
The following Function with conditions
compare | x y |
| | x == y | |
| | x <= y | |
| | otherwise | |
|
is transformed to
compare | x y | = compare3 x y |
compare1 | x y True | = LT |
compare1 | x y False | = compare0 x y otherwise |
compare2 | x y True | = EQ |
compare2 | x y False | = compare1 x y (x <= y) |
compare3 | x y | = compare2 x y (x == y) |
The following Function with conditions
gcd' | x 0 | = x |
gcd' | x y | = gcd' y (x `rem` y) |
is transformed to
gcd' | x vvw | = gcd'2 x vvw |
gcd' | x y | = gcd'0 x y |
gcd'0 | x y | = gcd' y (x `rem` y) |
gcd'1 | True x vvw | = x |
gcd'1 | vvx vvy vvz | = gcd'0 vvy vvz |
gcd'2 | x vvw | = gcd'1 (vvw == 0) x vvw |
gcd'2 | vwu vwv | = gcd'0 vwu vwv |
The following Function with conditions
gcd | 0 0 | = error [] |
gcd | x y | =
gcd' (abs x) (abs y) |
where |
gcd' | x 0 | = x |
gcd' | x y | = gcd' y (x `rem` y) |
|
|
is transformed to
gcd | vww vwx | = gcd3 vww vwx |
gcd | x y | = gcd0 x y |
gcd0 | x y | =
gcd' (abs x) (abs y) |
where |
gcd' | x vvw | = gcd'2 x vvw |
gcd' | x y | = gcd'0 x y |
|
|
gcd'0 | x y | = gcd' y (x `rem` y) |
|
|
gcd'1 | True x vvw | = x |
gcd'1 | vvx vvy vvz | = gcd'0 vvy vvz |
|
|
gcd'2 | x vvw | = gcd'1 (vvw == 0) x vvw |
gcd'2 | vwu vwv | = gcd'0 vwu vwv |
|
|
gcd1 | True vww vwx | = error [] |
gcd1 | vwy vwz vxu | = gcd0 vwz vxu |
gcd2 | True vww vwx | = gcd1 (vwx == 0) vww vwx |
gcd2 | vxv vxw vxx | = gcd0 vxw vxx |
gcd3 | vww vwx | = gcd2 (vww == 0) vww vwx |
gcd3 | vxy vxz | = gcd0 vxy vxz |
The following Function with conditions
is transformed to
absReal0 | x True | = `negate` x |
absReal1 | x True | = x |
absReal1 | x False | = absReal0 x otherwise |
absReal2 | x | = absReal1 x (x >= 0) |
The following Function with conditions
is transformed to
undefined0 | True | = undefined |
undefined1 | | = undefined0 False |
The following Function with conditions
reduce | x y |
| | y == 0 | |
| | otherwise |
= | x `quot` d :% (y `quot` d) |
|
|
where | |
|
is transformed to
reduce2 | x y | =
reduce1 x y (y == 0) |
where | |
|
reduce0 | x y True | = x `quot` d :% (y `quot` d) |
|
|
reduce1 | x y True | = error [] |
reduce1 | x y False | = reduce0 x y otherwise |
|
|
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
mainModule FiniteMap
| ((elemFM :: Ord a => Maybe a -> FiniteMap (Maybe a) b -> Bool) :: Ord a => Maybe a -> FiniteMap (Maybe a) b -> Bool) |
module FiniteMap where
| import qualified Maybe import qualified Prelude
|
| data FiniteMap b a = EmptyFM | Branch b a Int (FiniteMap b a) (FiniteMap b a)
|
| instance (Eq a, Eq b) => Eq (FiniteMap b a) where
|
|
(==) | fm_1 fm_2 | = | sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2 |
|
|
| elemFM :: Ord a => a -> FiniteMap a b -> Bool
elemFM | key fm | = | elemFM0 (lookupFM fm key) |
|
|
elemFM0 | Nothing | = | False |
elemFM0 | (Just elt) | = | True |
|
| fmToList :: FiniteMap a b -> [(a,b)]
fmToList | fm | = | foldFM fmToList0 [] fm |
|
|
fmToList0 | key elt rest | = | (key,elt) : rest |
|
| foldFM :: (c -> b -> a -> a) -> a -> FiniteMap c b -> a
foldFM | k z EmptyFM | = | z |
foldFM | k z (Branch key elt vw fm_l fm_r) | = | foldFM k (k key elt (foldFM k z fm_r)) fm_l |
|
| lookupFM :: Ord b => FiniteMap b a -> b -> Maybe a
lookupFM | EmptyFM key | = | lookupFM4 EmptyFM key |
lookupFM | (Branch key elt vx fm_l fm_r) key_to_find | = | lookupFM3 (Branch key elt vx fm_l fm_r) key_to_find |
|
|
lookupFM0 | key elt vx fm_l fm_r key_to_find True | = | Just elt |
|
|
lookupFM1 | key elt vx fm_l fm_r key_to_find True | = | lookupFM fm_r key_to_find |
lookupFM1 | key elt vx fm_l fm_r key_to_find False | = | lookupFM0 key elt vx fm_l fm_r key_to_find otherwise |
|
|
lookupFM2 | key elt vx fm_l fm_r key_to_find True | = | lookupFM fm_l key_to_find |
lookupFM2 | key elt vx fm_l fm_r key_to_find False | = | lookupFM1 key elt vx fm_l fm_r key_to_find (key_to_find > key) |
|
|
lookupFM3 | (Branch key elt vx fm_l fm_r) key_to_find | = | lookupFM2 key elt vx fm_l fm_r key_to_find (key_to_find < key) |
|
|
lookupFM4 | EmptyFM key | = | Nothing |
lookupFM4 | vvu vvv | = | lookupFM3 vvu vvv |
|
| sizeFM :: FiniteMap b a -> Int
sizeFM | EmptyFM | = | 0 |
sizeFM | (Branch vy vz size wu wv) | = | size |
|
module Maybe where
| import qualified FiniteMap import qualified Prelude
|
Let/Where Reductions:
The bindings of the following Let/Where expression
reduce1 x y (y == 0) |
where | |
|
reduce0 | x y True | = x `quot` d :% (y `quot` d) |
|
|
reduce1 | x y True | = error [] |
reduce1 | x y False | = reduce0 x y otherwise |
|
are unpacked to the following functions on top level
reduce2Reduce0 | vyu vyv x y True | = x `quot` reduce2D vyu vyv :% (y `quot` reduce2D vyu vyv) |
reduce2D | vyu vyv | = gcd vyu vyv |
reduce2Reduce1 | vyu vyv x y True | = error [] |
reduce2Reduce1 | vyu vyv x y False | = reduce2Reduce0 vyu vyv x y otherwise |
The bindings of the following Let/Where expression
gcd' (abs x) (abs y) |
where |
gcd' | x vvw | = gcd'2 x vvw |
gcd' | x y | = gcd'0 x y |
|
|
gcd'0 | x y | = gcd' y (x `rem` y) |
|
|
gcd'1 | True x vvw | = x |
gcd'1 | vvx vvy vvz | = gcd'0 vvy vvz |
|
|
gcd'2 | x vvw | = gcd'1 (vvw == 0) x vvw |
gcd'2 | vwu vwv | = gcd'0 vwu vwv |
|
are unpacked to the following functions on top level
gcd0Gcd' | x vvw | = gcd0Gcd'2 x vvw |
gcd0Gcd' | x y | = gcd0Gcd'0 x y |
gcd0Gcd'1 | True x vvw | = x |
gcd0Gcd'1 | vvx vvy vvz | = gcd0Gcd'0 vvy vvz |
gcd0Gcd'0 | x y | = gcd0Gcd' y (x `rem` y) |
gcd0Gcd'2 | x vvw | = gcd0Gcd'1 (vvw == 0) x vvw |
gcd0Gcd'2 | vwu vwv | = gcd0Gcd'0 vwu vwv |
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
mainModule FiniteMap
| ((elemFM :: Ord b => Maybe b -> FiniteMap (Maybe b) a -> Bool) :: Ord b => Maybe b -> FiniteMap (Maybe b) a -> Bool) |
module FiniteMap where
| import qualified Maybe import qualified Prelude
|
| data FiniteMap a b = EmptyFM | Branch a b Int (FiniteMap a b) (FiniteMap a b)
|
| instance (Eq a, Eq b) => Eq (FiniteMap b a) where
|
|
(==) | fm_1 fm_2 | = | sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2 |
|
|
| elemFM :: Ord a => a -> FiniteMap a b -> Bool
elemFM | key fm | = | elemFM0 (lookupFM fm key) |
|
|
elemFM0 | Nothing | = | False |
elemFM0 | (Just elt) | = | True |
|
| fmToList :: FiniteMap b a -> [(b,a)]
fmToList | fm | = | foldFM fmToList0 [] fm |
|
|
fmToList0 | key elt rest | = | (key,elt) : rest |
|
| foldFM :: (b -> c -> a -> a) -> a -> FiniteMap b c -> a
foldFM | k z EmptyFM | = | z |
foldFM | k z (Branch key elt vw fm_l fm_r) | = | foldFM k (k key elt (foldFM k z fm_r)) fm_l |
|
| lookupFM :: Ord b => FiniteMap b a -> b -> Maybe a
lookupFM | EmptyFM key | = | lookupFM4 EmptyFM key |
lookupFM | (Branch key elt vx fm_l fm_r) key_to_find | = | lookupFM3 (Branch key elt vx fm_l fm_r) key_to_find |
|
|
lookupFM0 | key elt vx fm_l fm_r key_to_find True | = | Just elt |
|
|
lookupFM1 | key elt vx fm_l fm_r key_to_find True | = | lookupFM fm_r key_to_find |
lookupFM1 | key elt vx fm_l fm_r key_to_find False | = | lookupFM0 key elt vx fm_l fm_r key_to_find otherwise |
|
|
lookupFM2 | key elt vx fm_l fm_r key_to_find True | = | lookupFM fm_l key_to_find |
lookupFM2 | key elt vx fm_l fm_r key_to_find False | = | lookupFM1 key elt vx fm_l fm_r key_to_find (key_to_find > key) |
|
|
lookupFM3 | (Branch key elt vx fm_l fm_r) key_to_find | = | lookupFM2 key elt vx fm_l fm_r key_to_find (key_to_find < key) |
|
|
lookupFM4 | EmptyFM key | = | Nothing |
lookupFM4 | vvu vvv | = | lookupFM3 vvu vvv |
|
| sizeFM :: FiniteMap b a -> Int
sizeFM | EmptyFM | = | 0 |
sizeFM | (Branch vy vz size wu wv) | = | size |
|
module Maybe where
| import qualified FiniteMap import qualified Prelude
|
Num Reduction: All numbers are transformed to thier corresponding representation with Pos, Neg, Succ and Zero.
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
mainModule FiniteMap
| (elemFM :: Ord b => Maybe b -> FiniteMap (Maybe b) a -> Bool) |
module FiniteMap where
| import qualified Maybe import qualified Prelude
|
| data FiniteMap a b = EmptyFM | Branch a b Int (FiniteMap a b) (FiniteMap a b)
|
| instance (Eq a, Eq b) => Eq (FiniteMap b a) where
|
|
(==) | fm_1 fm_2 | = | sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2 |
|
|
| elemFM :: Ord a => a -> FiniteMap a b -> Bool
elemFM | key fm | = | elemFM0 (lookupFM fm key) |
|
|
elemFM0 | Nothing | = | False |
elemFM0 | (Just elt) | = | True |
|
| fmToList :: FiniteMap b a -> [(b,a)]
fmToList | fm | = | foldFM fmToList0 [] fm |
|
|
fmToList0 | key elt rest | = | (key,elt) : rest |
|
| foldFM :: (a -> b -> c -> c) -> c -> FiniteMap a b -> c
foldFM | k z EmptyFM | = | z |
foldFM | k z (Branch key elt vw fm_l fm_r) | = | foldFM k (k key elt (foldFM k z fm_r)) fm_l |
|
| lookupFM :: Ord b => FiniteMap b a -> b -> Maybe a
lookupFM | EmptyFM key | = | lookupFM4 EmptyFM key |
lookupFM | (Branch key elt vx fm_l fm_r) key_to_find | = | lookupFM3 (Branch key elt vx fm_l fm_r) key_to_find |
|
|
lookupFM0 | key elt vx fm_l fm_r key_to_find True | = | Just elt |
|
|
lookupFM1 | key elt vx fm_l fm_r key_to_find True | = | lookupFM fm_r key_to_find |
lookupFM1 | key elt vx fm_l fm_r key_to_find False | = | lookupFM0 key elt vx fm_l fm_r key_to_find otherwise |
|
|
lookupFM2 | key elt vx fm_l fm_r key_to_find True | = | lookupFM fm_l key_to_find |
lookupFM2 | key elt vx fm_l fm_r key_to_find False | = | lookupFM1 key elt vx fm_l fm_r key_to_find (key_to_find > key) |
|
|
lookupFM3 | (Branch key elt vx fm_l fm_r) key_to_find | = | lookupFM2 key elt vx fm_l fm_r key_to_find (key_to_find < key) |
|
|
lookupFM4 | EmptyFM key | = | Nothing |
lookupFM4 | vvu vvv | = | lookupFM3 vvu vvv |
|
| sizeFM :: FiniteMap a b -> Int
sizeFM | EmptyFM | = | Pos Zero |
sizeFM | (Branch vy vz size wu wv) | = | size |
|
module Maybe where
| import qualified FiniteMap import qualified Prelude
|
Haskell To QDPs
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_primCmpNat(Succ(vyw280000), Succ(vyw290000)) → new_primCmpNat(vyw280000, vyw290000)
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_primCmpNat(Succ(vyw280000), Succ(vyw290000)) → new_primCmpNat(vyw280000, vyw290000)
The graph contains the following edges 1 > 1, 2 > 2
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_primPlusNat(Succ(vyw10000), Succ(vyw4001000)) → new_primPlusNat(vyw10000, vyw4001000)
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_primPlusNat(Succ(vyw10000), Succ(vyw4001000)) → new_primPlusNat(vyw10000, vyw4001000)
The graph contains the following edges 1 > 1, 2 > 2
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_primMulNat(Succ(vyw30100), Succ(vyw400100)) → new_primMulNat(vyw30100, Succ(vyw400100))
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_primMulNat(Succ(vyw30100), Succ(vyw400100)) → new_primMulNat(vyw30100, Succ(vyw400100))
The graph contains the following edges 1 > 1, 2 >= 2
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_primEqNat(Succ(vyw3000), Succ(vyw40000)) → new_primEqNat(vyw3000, vyw40000)
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_primEqNat(Succ(vyw3000), Succ(vyw40000)) → new_primEqNat(vyw3000, vyw40000)
The graph contains the following edges 1 > 1, 2 > 2
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), app(app(ty_Either, bbc), bbd), baf, bag) → new_esEs2(vyw300, vyw4000, bbc, bbd)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, baf, app(app(app(ty_@3, bdh), bea), beb)) → new_esEs3(vyw302, vyw4002, bdh, bea, beb)
new_esEs2(Left(vyw300), Left(vyw4000), app(app(ty_@2, gc), gd), gb) → new_esEs0(vyw300, vyw4000, gc, gd)
new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), app(app(ty_Either, cf), cg), cb) → new_esEs2(vyw300, vyw4000, cf, cg)
new_esEs2(Left(vyw300), Left(vyw4000), app(ty_[], ge), gb) → new_esEs1(vyw300, vyw4000, ge)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), app(app(ty_@2, bah), bba), baf, bag) → new_esEs0(vyw300, vyw4000, bah, bba)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), app(ty_Maybe, bae), baf, bag) → new_esEs(vyw300, vyw4000, bae)
new_esEs(Just(vyw300), Just(vyw4000), app(app(app(ty_@3, bf), bg), bh)) → new_esEs3(vyw300, vyw4000, bf, bg, bh)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, baf, app(ty_[], bde)) → new_esEs1(vyw302, vyw4002, bde)
new_esEs1(:(vyw300, vyw301), :(vyw4000, vyw4001), fh) → new_esEs1(vyw301, vyw4001, fh)
new_esEs(Just(vyw300), Just(vyw4000), app(app(ty_Either, bd), be)) → new_esEs2(vyw300, vyw4000, bd, be)
new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), app(ty_[], ce), cb) → new_esEs1(vyw300, vyw4000, ce)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, app(app(ty_Either, bce), bcf), bag) → new_esEs2(vyw301, vyw4001, bce, bcf)
new_esEs1(:(vyw300, vyw301), :(vyw4000, vyw4001), app(ty_[], fa)) → new_esEs1(vyw300, vyw4000, fa)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, app(ty_[], bcd), bag) → new_esEs1(vyw301, vyw4001, bcd)
new_esEs(Just(vyw300), Just(vyw4000), app(ty_Maybe, h)) → new_esEs(vyw300, vyw4000, h)
new_esEs2(Left(vyw300), Left(vyw4000), app(app(ty_Either, gf), gg), gb) → new_esEs2(vyw300, vyw4000, gf, gg)
new_esEs2(Left(vyw300), Left(vyw4000), app(app(app(ty_@3, gh), ha), hb), gb) → new_esEs3(vyw300, vyw4000, gh, ha, hb)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, app(ty_Maybe, bca), bag) → new_esEs(vyw301, vyw4001, bca)
new_esEs1(:(vyw300, vyw301), :(vyw4000, vyw4001), app(app(ty_Either, fb), fc)) → new_esEs2(vyw300, vyw4000, fb, fc)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, app(app(ty_@2, bcb), bcc), bag) → new_esEs0(vyw301, vyw4001, bcb, bcc)
new_esEs2(Right(vyw300), Right(vyw4000), hc, app(app(ty_@2, he), hf)) → new_esEs0(vyw300, vyw4000, he, hf)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, baf, app(ty_Maybe, bdb)) → new_esEs(vyw302, vyw4002, bdb)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, baf, app(app(ty_Either, bdf), bdg)) → new_esEs2(vyw302, vyw4002, bdf, bdg)
new_esEs2(Left(vyw300), Left(vyw4000), app(ty_Maybe, ga), gb) → new_esEs(vyw300, vyw4000, ga)
new_esEs2(Right(vyw300), Right(vyw4000), hc, app(ty_[], hg)) → new_esEs1(vyw300, vyw4000, hg)
new_esEs(Just(vyw300), Just(vyw4000), app(app(ty_@2, ba), bb)) → new_esEs0(vyw300, vyw4000, ba, bb)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, app(app(app(ty_@3, bcg), bch), bda), bag) → new_esEs3(vyw301, vyw4001, bcg, bch, bda)
new_esEs1(:(vyw300, vyw301), :(vyw4000, vyw4001), app(ty_Maybe, ef)) → new_esEs(vyw300, vyw4000, ef)
new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), app(app(app(ty_@3, da), db), dc), cb) → new_esEs3(vyw300, vyw4000, da, db, dc)
new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dd, app(app(ty_Either, ea), eb)) → new_esEs2(vyw301, vyw4001, ea, eb)
new_esEs(Just(vyw300), Just(vyw4000), app(ty_[], bc)) → new_esEs1(vyw300, vyw4000, bc)
new_esEs2(Right(vyw300), Right(vyw4000), hc, app(ty_Maybe, hd)) → new_esEs(vyw300, vyw4000, hd)
new_esEs1(:(vyw300, vyw301), :(vyw4000, vyw4001), app(app(app(ty_@3, fd), ff), fg)) → new_esEs3(vyw300, vyw4000, fd, ff, fg)
new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), app(ty_Maybe, ca), cb) → new_esEs(vyw300, vyw4000, ca)
new_esEs2(Right(vyw300), Right(vyw4000), hc, app(app(ty_Either, hh), baa)) → new_esEs2(vyw300, vyw4000, hh, baa)
new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dd, app(ty_Maybe, de)) → new_esEs(vyw301, vyw4001, de)
new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), app(app(ty_@2, cc), cd), cb) → new_esEs0(vyw300, vyw4000, cc, cd)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), app(ty_[], bbb), baf, bag) → new_esEs1(vyw300, vyw4000, bbb)
new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dd, app(ty_[], dh)) → new_esEs1(vyw301, vyw4001, dh)
new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dd, app(app(ty_@2, df), dg)) → new_esEs0(vyw301, vyw4001, df, dg)
new_esEs2(Right(vyw300), Right(vyw4000), hc, app(app(app(ty_@3, bab), bac), bad)) → new_esEs3(vyw300, vyw4000, bab, bac, bad)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, baf, app(app(ty_@2, bdc), bdd)) → new_esEs0(vyw302, vyw4002, bdc, bdd)
new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dd, app(app(app(ty_@3, ec), ed), ee)) → new_esEs3(vyw301, vyw4001, ec, ed, ee)
new_esEs1(:(vyw300, vyw301), :(vyw4000, vyw4001), app(app(ty_@2, eg), eh)) → new_esEs0(vyw300, vyw4000, eg, eh)
new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), app(app(app(ty_@3, bbe), bbf), bbg), baf, bag) → new_esEs3(vyw300, vyw4000, bbe, bbf, bbg)
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_esEs1(:(vyw300, vyw301), :(vyw4000, vyw4001), app(app(app(ty_@3, fd), ff), fg)) → new_esEs3(vyw300, vyw4000, fd, ff, fg)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5
- new_esEs(Just(vyw300), Just(vyw4000), app(app(app(ty_@3, bf), bg), bh)) → new_esEs3(vyw300, vyw4000, bf, bg, bh)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5
- new_esEs1(:(vyw300, vyw301), :(vyw4000, vyw4001), app(app(ty_Either, fb), fc)) → new_esEs2(vyw300, vyw4000, fb, fc)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_esEs(Just(vyw300), Just(vyw4000), app(app(ty_Either, bd), be)) → new_esEs2(vyw300, vyw4000, bd, be)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_esEs1(:(vyw300, vyw301), :(vyw4000, vyw4001), app(app(ty_@2, eg), eh)) → new_esEs0(vyw300, vyw4000, eg, eh)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_esEs(Just(vyw300), Just(vyw4000), app(app(ty_@2, ba), bb)) → new_esEs0(vyw300, vyw4000, ba, bb)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_esEs1(:(vyw300, vyw301), :(vyw4000, vyw4001), app(ty_Maybe, ef)) → new_esEs(vyw300, vyw4000, ef)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_esEs(Just(vyw300), Just(vyw4000), app(ty_Maybe, h)) → new_esEs(vyw300, vyw4000, h)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_esEs(Just(vyw300), Just(vyw4000), app(ty_[], bc)) → new_esEs1(vyw300, vyw4000, bc)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_esEs2(Left(vyw300), Left(vyw4000), app(app(app(ty_@3, gh), ha), hb), gb) → new_esEs3(vyw300, vyw4000, gh, ha, hb)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5
- new_esEs2(Right(vyw300), Right(vyw4000), hc, app(app(app(ty_@3, bab), bac), bad)) → new_esEs3(vyw300, vyw4000, bab, bac, bad)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_esEs2(Left(vyw300), Left(vyw4000), app(app(ty_Either, gf), gg), gb) → new_esEs2(vyw300, vyw4000, gf, gg)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_esEs2(Right(vyw300), Right(vyw4000), hc, app(app(ty_Either, hh), baa)) → new_esEs2(vyw300, vyw4000, hh, baa)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_esEs2(Left(vyw300), Left(vyw4000), app(app(ty_@2, gc), gd), gb) → new_esEs0(vyw300, vyw4000, gc, gd)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_esEs2(Right(vyw300), Right(vyw4000), hc, app(app(ty_@2, he), hf)) → new_esEs0(vyw300, vyw4000, he, hf)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_esEs2(Left(vyw300), Left(vyw4000), app(ty_Maybe, ga), gb) → new_esEs(vyw300, vyw4000, ga)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_esEs2(Right(vyw300), Right(vyw4000), hc, app(ty_Maybe, hd)) → new_esEs(vyw300, vyw4000, hd)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_esEs2(Left(vyw300), Left(vyw4000), app(ty_[], ge), gb) → new_esEs1(vyw300, vyw4000, ge)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_esEs2(Right(vyw300), Right(vyw4000), hc, app(ty_[], hg)) → new_esEs1(vyw300, vyw4000, hg)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, baf, app(app(app(ty_@3, bdh), bea), beb)) → new_esEs3(vyw302, vyw4002, bdh, bea, beb)
The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4, 5 > 5
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, app(app(app(ty_@3, bcg), bch), bda), bag) → new_esEs3(vyw301, vyw4001, bcg, bch, bda)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), app(app(app(ty_@3, bbe), bbf), bbg), baf, bag) → new_esEs3(vyw300, vyw4000, bbe, bbf, bbg)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5
- new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), app(app(app(ty_@3, da), db), dc), cb) → new_esEs3(vyw300, vyw4000, da, db, dc)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5
- new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dd, app(app(app(ty_@3, ec), ed), ee)) → new_esEs3(vyw301, vyw4001, ec, ed, ee)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), app(app(ty_Either, bbc), bbd), baf, bag) → new_esEs2(vyw300, vyw4000, bbc, bbd)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, app(app(ty_Either, bce), bcf), bag) → new_esEs2(vyw301, vyw4001, bce, bcf)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, baf, app(app(ty_Either, bdf), bdg)) → new_esEs2(vyw302, vyw4002, bdf, bdg)
The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), app(app(ty_@2, bah), bba), baf, bag) → new_esEs0(vyw300, vyw4000, bah, bba)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, app(app(ty_@2, bcb), bcc), bag) → new_esEs0(vyw301, vyw4001, bcb, bcc)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, baf, app(app(ty_@2, bdc), bdd)) → new_esEs0(vyw302, vyw4002, bdc, bdd)
The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), app(ty_Maybe, bae), baf, bag) → new_esEs(vyw300, vyw4000, bae)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, app(ty_Maybe, bca), bag) → new_esEs(vyw301, vyw4001, bca)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, baf, app(ty_Maybe, bdb)) → new_esEs(vyw302, vyw4002, bdb)
The graph contains the following edges 1 > 1, 2 > 2, 5 > 3
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, baf, app(ty_[], bde)) → new_esEs1(vyw302, vyw4002, bde)
The graph contains the following edges 1 > 1, 2 > 2, 5 > 3
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bbh, app(ty_[], bcd), bag) → new_esEs1(vyw301, vyw4001, bcd)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_esEs3(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), app(ty_[], bbb), baf, bag) → new_esEs1(vyw300, vyw4000, bbb)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), app(app(ty_Either, cf), cg), cb) → new_esEs2(vyw300, vyw4000, cf, cg)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dd, app(app(ty_Either, ea), eb)) → new_esEs2(vyw301, vyw4001, ea, eb)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), app(app(ty_@2, cc), cd), cb) → new_esEs0(vyw300, vyw4000, cc, cd)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dd, app(app(ty_@2, df), dg)) → new_esEs0(vyw301, vyw4001, df, dg)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), app(ty_Maybe, ca), cb) → new_esEs(vyw300, vyw4000, ca)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dd, app(ty_Maybe, de)) → new_esEs(vyw301, vyw4001, de)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), app(ty_[], ce), cb) → new_esEs1(vyw300, vyw4000, ce)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_esEs0(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dd, app(ty_[], dh)) → new_esEs1(vyw301, vyw4001, dh)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_esEs1(:(vyw300, vyw301), :(vyw4000, vyw4001), fh) → new_esEs1(vyw301, vyw4001, fh)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_esEs1(:(vyw300, vyw301), :(vyw4000, vyw4001), app(ty_[], fa)) → new_esEs1(vyw300, vyw4000, fa)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), baf), app(app(ty_@2, bag), bah))) → new_ltEs(vyw28002, vyw29002, bag, bah)
new_ltEs1(:(vyw28000, vyw28001), :(vyw29000, vyw29001), gb) → new_compare(vyw28001, vyw29001, gb)
new_compare21(Just(Just(vyw28000)), Just(Just(vyw29000)), False, app(ty_Maybe, app(app(ty_Either, hf), hg))) → new_ltEs0(vyw28000, vyw29000, hf, hg)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), app(app(ty_Either, bcc), bcd)), bcb)) → new_lt0(vyw28001, vyw29001, bcc, bcd)
new_ltEs0(Left(vyw28000), Left(vyw29000), app(app(app(ty_@3, ed), ee), ef), dg) → new_ltEs3(vyw28000, vyw29000, ed, ee, ef)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), app(ty_Maybe, bcf)), bcb)) → new_lt2(vyw28001, vyw29001, bcf)
new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), h, app(ty_Maybe, bf)) → new_ltEs2(vyw28001, vyw29001, bf)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), app(app(ty_@2, bbh), bca)), bcb)) → new_lt(vyw28001, vyw29001, bbh, bca)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), app(app(ty_@2, bdb), bdc), baf, bcb) → new_lt(vyw28000, vyw29000, bdb, bdc)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), baf), app(app(app(ty_@3, bbe), bbf), bbg))) → new_ltEs3(vyw28002, vyw29002, bbe, bbf, bbg)
new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, app(ty_Maybe, da)), cd)) → new_compare21(vyw28000, vyw29000, new_esEs6(vyw28000, vyw29000, da), da)
new_compare22(vyw28000, vyw29000, False, db, dc, dd) → new_ltEs3(vyw28000, vyw29000, db, dc, dd)
new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, h), app(ty_[], be))) → new_ltEs1(vyw28001, vyw29001, be)
new_ltEs0(Left(vyw28000), Left(vyw29000), app(ty_[], eb), dg) → new_ltEs1(vyw28000, vyw29000, eb)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), app(app(app(ty_@3, bcg), bch), bda)), bcb)) → new_lt3(vyw28001, vyw29001, bcg, bch, bda)
new_compare21(Just(Just(vyw28000)), Just(Just(vyw29000)), False, app(ty_Maybe, app(app(ty_@2, hd), he))) → new_ltEs(vyw28000, vyw29000, hd, he)
new_primCompAux(vyw28000, vyw29000, vyw99, app(ty_[], gg)) → new_compare(vyw28000, vyw29000, gg)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), baf), app(ty_[], bbc))) → new_ltEs1(vyw28002, vyw29002, bbc)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, app(ty_[], bdf)), baf), bcb)) → new_lt1(vyw28000, vyw29000, bdf)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, baf, app(app(ty_Either, bba), bbb)) → new_ltEs0(vyw28002, vyw29002, bba, bbb)
new_lt0(vyw28000, vyw29000, ce, cf) → new_compare20(vyw28000, vyw29000, new_esEs5(vyw28000, vyw29000, ce, cf), ce, cf)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, app(app(ty_@2, bdb), bdc)), baf), bcb)) → new_lt(vyw28000, vyw29000, bdb, bdc)
new_lt2(vyw28000, vyw29000, da) → new_compare21(vyw28000, vyw29000, new_esEs6(vyw28000, vyw29000, da), da)
new_compare21(Just(Right(vyw28000)), Just(Right(vyw29000)), False, app(app(ty_Either, eg), app(app(ty_Either, fb), fc))) → new_ltEs0(vyw28000, vyw29000, fb, fc)
new_compare21(Just(Right(vyw28000)), Just(Right(vyw29000)), False, app(app(ty_Either, eg), app(ty_Maybe, ff))) → new_ltEs2(vyw28000, vyw29000, ff)
new_ltEs2(Just(vyw28000), Just(vyw29000), app(ty_[], hh)) → new_ltEs1(vyw28000, vyw29000, hh)
new_ltEs2(Just(vyw28000), Just(vyw29000), app(app(app(ty_@3, bab), bac), bad)) → new_ltEs3(vyw28000, vyw29000, bab, bac, bad)
new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), app(ty_Maybe, da), cd) → new_compare21(vyw28000, vyw29000, new_esEs6(vyw28000, vyw29000, da), da)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, baf, app(app(ty_@2, bag), bah)) → new_ltEs(vyw28002, vyw29002, bag, bah)
new_compare21(Just(:(vyw28000, vyw28001)), Just(:(vyw29000, vyw29001)), False, app(ty_[], gb)) → new_primCompAux(vyw28000, vyw29000, new_compare0(vyw28001, vyw29001, gb), gb)
new_ltEs0(Right(vyw28000), Right(vyw29000), eg, app(app(ty_Either, fb), fc)) → new_ltEs0(vyw28000, vyw29000, fb, fc)
new_ltEs0(Right(vyw28000), Right(vyw29000), eg, app(ty_Maybe, ff)) → new_ltEs2(vyw28000, vyw29000, ff)
new_compare21(Just(Right(vyw28000)), Just(Right(vyw29000)), False, app(app(ty_Either, eg), app(ty_[], fd))) → new_ltEs1(vyw28000, vyw29000, fd)
new_primCompAux(vyw28000, vyw29000, vyw99, app(app(app(ty_@3, ha), hb), hc)) → new_compare5(vyw28000, vyw29000, ha, hb, hc)
new_compare21(Just(Left(vyw28000)), Just(Left(vyw29000)), False, app(app(ty_Either, app(app(ty_Either, dh), ea)), dg)) → new_ltEs0(vyw28000, vyw29000, dh, ea)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), app(ty_[], bce)), bcb)) → new_lt1(vyw28001, vyw29001, bce)
new_ltEs0(Left(vyw28000), Left(vyw29000), app(ty_Maybe, ec), dg) → new_ltEs2(vyw28000, vyw29000, ec)
new_primCompAux(vyw28000, vyw29000, vyw99, app(app(ty_Either, ge), gf)) → new_compare3(vyw28000, vyw29000, ge, gf)
new_compare21(Just(Right(vyw28000)), Just(Right(vyw29000)), False, app(app(ty_Either, eg), app(app(app(ty_@3, fg), fh), ga))) → new_ltEs3(vyw28000, vyw29000, fg, fh, ga)
new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), h, app(app(ty_@2, ba), bb)) → new_ltEs(vyw28001, vyw29001, ba, bb)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, app(app(app(ty_@3, bdh), bea), beb)), baf), bcb)) → new_lt3(vyw28000, vyw29000, bdh, bea, beb)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, app(app(app(ty_@3, bcg), bch), bda), bcb) → new_lt3(vyw28001, vyw29001, bcg, bch, bda)
new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, app(ty_[], cg)), cd)) → new_compare(vyw28000, vyw29000, cg)
new_compare4(vyw28000, vyw29000, da) → new_compare21(vyw28000, vyw29000, new_esEs6(vyw28000, vyw29000, da), da)
new_compare21(Just(Left(vyw28000)), Just(Left(vyw29000)), False, app(app(ty_Either, app(app(app(ty_@3, ed), ee), ef)), dg)) → new_ltEs3(vyw28000, vyw29000, ed, ee, ef)
new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), h, app(app(ty_Either, bc), bd)) → new_ltEs0(vyw28001, vyw29001, bc, bd)
new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), app(app(ty_@2, cb), cc), cd) → new_compare2(vyw28000, vyw29000, new_esEs4(vyw28000, vyw29000, cb, cc), cb, cc)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, baf, app(ty_[], bbc)) → new_ltEs1(vyw28002, vyw29002, bbc)
new_compare21(Just(Just(vyw28000)), Just(Just(vyw29000)), False, app(ty_Maybe, app(ty_Maybe, baa))) → new_ltEs2(vyw28000, vyw29000, baa)
new_primCompAux(vyw28000, vyw29000, vyw99, app(app(ty_@2, gc), gd)) → new_compare1(vyw28000, vyw29000, gc, gd)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), app(app(ty_Either, bdd), bde), baf, bcb) → new_lt0(vyw28000, vyw29000, bdd, bde)
new_compare21(Just(Just(vyw28000)), Just(Just(vyw29000)), False, app(ty_Maybe, app(ty_[], hh))) → new_ltEs1(vyw28000, vyw29000, hh)
new_lt(vyw28000, vyw29000, cb, cc) → new_compare2(vyw28000, vyw29000, new_esEs4(vyw28000, vyw29000, cb, cc), cb, cc)
new_compare2(vyw28000, vyw29000, False, cb, cc) → new_ltEs(vyw28000, vyw29000, cb, cc)
new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, app(app(ty_Either, ce), cf)), cd)) → new_compare20(vyw28000, vyw29000, new_esEs5(vyw28000, vyw29000, ce, cf), ce, cf)
new_ltEs0(Right(vyw28000), Right(vyw29000), eg, app(app(app(ty_@3, fg), fh), ga)) → new_ltEs3(vyw28000, vyw29000, fg, fh, ga)
new_compare21(Just(Left(vyw28000)), Just(Left(vyw29000)), False, app(app(ty_Either, app(ty_[], eb)), dg)) → new_ltEs1(vyw28000, vyw29000, eb)
new_compare21(Just(Left(vyw28000)), Just(Left(vyw29000)), False, app(app(ty_Either, app(app(ty_@2, de), df)), dg)) → new_ltEs(vyw28000, vyw29000, de, df)
new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), h, app(ty_[], be)) → new_ltEs1(vyw28001, vyw29001, be)
new_compare5(vyw28000, vyw29000, db, dc, dd) → new_compare22(vyw28000, vyw29000, new_esEs7(vyw28000, vyw29000, db, dc, dd), db, dc, dd)
new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), app(app(ty_Either, ce), cf), cd) → new_compare20(vyw28000, vyw29000, new_esEs5(vyw28000, vyw29000, ce, cf), ce, cf)
new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, app(app(app(ty_@3, db), dc), dd)), cd)) → new_compare22(vyw28000, vyw29000, new_esEs7(vyw28000, vyw29000, db, dc, dd), db, dc, dd)
new_ltEs2(Just(vyw28000), Just(vyw29000), app(app(ty_Either, hf), hg)) → new_ltEs0(vyw28000, vyw29000, hf, hg)
new_compare3(vyw28000, vyw29000, ce, cf) → new_compare20(vyw28000, vyw29000, new_esEs5(vyw28000, vyw29000, ce, cf), ce, cf)
new_ltEs0(Left(vyw28000), Left(vyw29000), app(app(ty_Either, dh), ea), dg) → new_ltEs0(vyw28000, vyw29000, dh, ea)
new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), app(ty_[], cg), cd) → new_compare(vyw28000, vyw29000, cg)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), app(ty_Maybe, bdg), baf, bcb) → new_lt2(vyw28000, vyw29000, bdg)
new_lt3(vyw28000, vyw29000, db, dc, dd) → new_compare22(vyw28000, vyw29000, new_esEs7(vyw28000, vyw29000, db, dc, dd), db, dc, dd)
new_ltEs0(Right(vyw28000), Right(vyw29000), eg, app(app(ty_@2, eh), fa)) → new_ltEs(vyw28000, vyw29000, eh, fa)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, baf, app(ty_Maybe, bbd)) → new_ltEs2(vyw28002, vyw29002, bbd)
new_compare21(Just(Right(vyw28000)), Just(Right(vyw29000)), False, app(app(ty_Either, eg), app(app(ty_@2, eh), fa))) → new_ltEs(vyw28000, vyw29000, eh, fa)
new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, h), app(app(app(ty_@3, bg), bh), ca))) → new_ltEs3(vyw28001, vyw29001, bg, bh, ca)
new_compare21(Just(:(vyw28000, vyw28001)), Just(:(vyw29000, vyw29001)), False, app(ty_[], gb)) → new_compare(vyw28001, vyw29001, gb)
new_compare20(vyw28000, vyw29000, False, ce, cf) → new_ltEs0(vyw28000, vyw29000, ce, cf)
new_ltEs0(Left(vyw28000), Left(vyw29000), app(app(ty_@2, de), df), dg) → new_ltEs(vyw28000, vyw29000, de, df)
new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), h, app(app(app(ty_@3, bg), bh), ca)) → new_ltEs3(vyw28001, vyw29001, bg, bh, ca)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), baf), app(app(ty_Either, bba), bbb))) → new_ltEs0(vyw28002, vyw29002, bba, bbb)
new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, h), app(ty_Maybe, bf))) → new_ltEs2(vyw28001, vyw29001, bf)
new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, h), app(app(ty_Either, bc), bd))) → new_ltEs0(vyw28001, vyw29001, bc, bd)
new_compare21(Just(Just(vyw28000)), Just(Just(vyw29000)), False, app(ty_Maybe, app(app(app(ty_@3, bab), bac), bad))) → new_ltEs3(vyw28000, vyw29000, bab, bac, bad)
new_lt1(vyw28000, vyw29000, cg) → new_compare(vyw28000, vyw29000, cg)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, app(app(ty_@2, bbh), bca), bcb) → new_lt(vyw28001, vyw29001, bbh, bca)
new_ltEs2(Just(vyw28000), Just(vyw29000), app(app(ty_@2, hd), he)) → new_ltEs(vyw28000, vyw29000, hd, he)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, baf, app(app(app(ty_@3, bbe), bbf), bbg)) → new_ltEs3(vyw28002, vyw29002, bbe, bbf, bbg)
new_compare21(Just(Left(vyw28000)), Just(Left(vyw29000)), False, app(app(ty_Either, app(ty_Maybe, ec)), dg)) → new_ltEs2(vyw28000, vyw29000, ec)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), app(ty_[], bdf), baf, bcb) → new_lt1(vyw28000, vyw29000, bdf)
new_ltEs2(Just(vyw28000), Just(vyw29000), app(ty_Maybe, baa)) → new_ltEs2(vyw28000, vyw29000, baa)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), app(app(app(ty_@3, bdh), bea), beb), baf, bcb) → new_lt3(vyw28000, vyw29000, bdh, bea, beb)
new_compare(:(vyw28000, vyw28001), :(vyw29000, vyw29001), gb) → new_compare(vyw28001, vyw29001, gb)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), baf), app(ty_Maybe, bbd))) → new_ltEs2(vyw28002, vyw29002, bbd)
new_compare(:(vyw28000, vyw28001), :(vyw29000, vyw29001), gb) → new_primCompAux(vyw28000, vyw29000, new_compare0(vyw28001, vyw29001, gb), gb)
new_ltEs0(Right(vyw28000), Right(vyw29000), eg, app(ty_[], fd)) → new_ltEs1(vyw28000, vyw29000, fd)
new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, app(app(ty_@2, cb), cc)), cd)) → new_compare2(vyw28000, vyw29000, new_esEs4(vyw28000, vyw29000, cb, cc), cb, cc)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, app(app(ty_Either, bcc), bcd), bcb) → new_lt0(vyw28001, vyw29001, bcc, bcd)
new_primCompAux(vyw28000, vyw29000, vyw99, app(ty_Maybe, gh)) → new_compare4(vyw28000, vyw29000, gh)
new_ltEs1(:(vyw28000, vyw28001), :(vyw29000, vyw29001), gb) → new_primCompAux(vyw28000, vyw29000, new_compare0(vyw28001, vyw29001, gb), gb)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, app(app(ty_Either, bdd), bde)), baf), bcb)) → new_lt0(vyw28000, vyw29000, bdd, bde)
new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, app(ty_Maybe, bdg)), baf), bcb)) → new_lt2(vyw28000, vyw29000, bdg)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, app(ty_Maybe, bcf), bcb) → new_lt2(vyw28001, vyw29001, bcf)
new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, h), app(app(ty_@2, ba), bb))) → new_ltEs(vyw28001, vyw29001, ba, bb)
new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, app(ty_[], bce), bcb) → new_lt1(vyw28001, vyw29001, bce)
new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), app(app(app(ty_@3, db), dc), dd), cd) → new_compare22(vyw28000, vyw29000, new_esEs7(vyw28000, vyw29000, db, dc, dd), db, dc, dd)
new_compare1(vyw28000, vyw29000, cb, cc) → new_compare2(vyw28000, vyw29000, new_esEs4(vyw28000, vyw29000, cb, cc), cb, cc)
The TRS R consists of the following rules:
new_esEs26(vyw301, vyw4001, ty_@0) → new_esEs15(vyw301, vyw4001)
new_compare112(vyw84, vyw85, True, cba) → LT
new_esEs24(vyw28001, vyw29001, app(app(ty_Either, bcc), bcd)) → new_esEs5(vyw28001, vyw29001, bcc, bcd)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Char) → new_esEs17(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Int) → new_ltEs6(vyw28000, vyw29000)
new_ltEs19(vyw2800, vyw2900, app(ty_Ratio, cbc)) → new_ltEs11(vyw2800, vyw2900, cbc)
new_compare6(vyw28000, vyw29000, app(app(app(ty_@3, ha), hb), hc)) → new_compare15(vyw28000, vyw29000, ha, hb, hc)
new_ltEs8(False, True) → True
new_esEs5(Left(vyw300), Left(vyw4000), ty_Ordering, ceg) → new_esEs14(vyw300, vyw4000)
new_esEs17(Char(vyw300), Char(vyw4000)) → new_primEqNat0(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, app(ty_[], gg)) → new_compare0(vyw28000, vyw29000, gg)
new_ltEs19(vyw2800, vyw2900, app(ty_[], gb)) → new_ltEs9(vyw2800, vyw2900, gb)
new_esEs24(vyw28001, vyw29001, ty_Char) → new_esEs17(vyw28001, vyw29001)
new_compare110(vyw28000, vyw29000, True, cb, cc) → LT
new_lt6(vyw28000, vyw29000) → new_esEs14(new_compare8(vyw28000, vyw29000), LT)
new_lt19(vyw28001, vyw29001, ty_Integer) → new_lt18(vyw28001, vyw29001)
new_esEs23(vyw28000, vyw29000, app(app(ty_Either, bdd), bde)) → new_esEs5(vyw28000, vyw29000, bdd, bde)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Double, ceg) → new_esEs12(vyw300, vyw4000)
new_esEs23(vyw28000, vyw29000, app(app(ty_@2, bdb), bdc)) → new_esEs4(vyw28000, vyw29000, bdb, bdc)
new_esEs23(vyw28000, vyw29000, ty_Integer) → new_esEs18(vyw28000, vyw29000)
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, app(ty_[], fd)) → new_ltEs9(vyw28000, vyw29000, fd)
new_esEs20(vyw301, vyw4001, ty_Int) → new_esEs9(vyw301, vyw4001)
new_lt4(vyw28000, vyw29000, ty_Double) → new_lt10(vyw28000, vyw29000)
new_esEs20(vyw301, vyw4001, ty_Double) → new_esEs12(vyw301, vyw4001)
new_compare27(vyw28000, vyw29000, False, ce, cf) → new_compare114(vyw28000, vyw29000, new_ltEs7(vyw28000, vyw29000, ce, cf), ce, cf)
new_esEs25(vyw300, vyw4000, ty_Char) → new_esEs17(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(ty_[], hh)) → new_ltEs9(vyw28000, vyw29000, hh)
new_esEs23(vyw28000, vyw29000, ty_Float) → new_esEs16(vyw28000, vyw29000)
new_ltEs12(Nothing, Nothing, cbd) → True
new_esEs16(Float(vyw300, vyw301), Float(vyw4000, vyw4001)) → new_esEs9(new_sr(vyw300, vyw4000), new_sr(vyw301, vyw4001))
new_ltEs7(Left(vyw28000), Right(vyw29000), eg, dg) → True
new_primMulNat0(Zero, Zero) → Zero
new_esEs25(vyw300, vyw4000, ty_Double) → new_esEs12(vyw300, vyw4000)
new_esEs6(Just(vyw300), Just(vyw4000), app(ty_Ratio, cdd)) → new_esEs13(vyw300, vyw4000, cdd)
new_ltEs20(vyw28002, vyw29002, ty_@0) → new_ltEs15(vyw28002, vyw29002)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, ty_Float) → new_esEs16(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Float) → new_ltEs16(vyw28000, vyw29000)
new_esEs23(vyw28000, vyw29000, app(ty_Ratio, cch)) → new_esEs13(vyw28000, vyw29000, cch)
new_esEs25(vyw300, vyw4000, app(app(ty_@2, daa), dab)) → new_esEs4(vyw300, vyw4000, daa, dab)
new_lt20(vyw28000, vyw29000, ty_Integer) → new_lt18(vyw28000, vyw29000)
new_compare25(vyw280, vyw290, True, cbb) → EQ
new_compare10(vyw28000, vyw29000) → new_compare23(vyw28000, vyw29000, new_esEs10(vyw28000, vyw29000))
new_lt20(vyw28000, vyw29000, app(app(ty_@2, bdb), bdc)) → new_lt5(vyw28000, vyw29000, bdb, bdc)
new_esEs22(vyw300, vyw4000, ty_Char) → new_esEs17(vyw300, vyw4000)
new_esEs8(vyw28000, vyw29000, ty_Double) → new_esEs12(vyw28000, vyw29000)
new_compare14(vyw28000, vyw29000) → new_compare28(vyw28000, vyw29000, new_esEs14(vyw28000, vyw29000))
new_compare16(@0, @0) → EQ
new_lt18(vyw28000, vyw29000) → new_esEs14(new_compare19(vyw28000, vyw29000), LT)
new_esEs19(vyw300, vyw4000, app(app(app(ty_@3, bfg), bfh), bga)) → new_esEs7(vyw300, vyw4000, bfg, bfh, bga)
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, app(app(ty_@2, eh), fa)) → new_ltEs4(vyw28000, vyw29000, eh, fa)
new_esEs22(vyw300, vyw4000, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs19(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_ltEs6(vyw2800, vyw2900) → new_not(new_esEs14(new_compare8(vyw2800, vyw2900), GT))
new_esEs20(vyw301, vyw4001, app(ty_Ratio, bgb)) → new_esEs13(vyw301, vyw4001, bgb)
new_ltEs13(LT, EQ) → True
new_ltEs20(vyw28002, vyw29002, app(ty_[], bbc)) → new_ltEs9(vyw28002, vyw29002, bbc)
new_esEs11([], [], cbe) → True
new_compare0(:(vyw28000, vyw28001), :(vyw29000, vyw29001), gb) → new_primCompAux0(vyw28000, vyw29000, new_compare0(vyw28001, vyw29001, gb), gb)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Double) → new_esEs12(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, ty_Float) → new_compare17(vyw28000, vyw29000)
new_esEs22(vyw300, vyw4000, app(ty_Maybe, cbg)) → new_esEs6(vyw300, vyw4000, cbg)
new_esEs21(vyw302, vyw4002, app(app(app(ty_@3, cac), cad), cae)) → new_esEs7(vyw302, vyw4002, cac, cad, cae)
new_compare12(:%(vyw28000, vyw28001), :%(vyw29000, vyw29001), ty_Integer) → new_compare19(new_sr0(vyw28000, vyw29001), new_sr0(vyw29000, vyw28001))
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_@0) → new_ltEs15(vyw28000, vyw29000)
new_ltEs19(vyw2800, vyw2900, app(ty_Maybe, cbd)) → new_ltEs12(vyw2800, vyw2900, cbd)
new_lt15(vyw28000, vyw29000) → new_esEs14(new_compare16(vyw28000, vyw29000), LT)
new_compare6(vyw28000, vyw29000, ty_@0) → new_compare16(vyw28000, vyw29000)
new_esEs8(vyw28000, vyw29000, app(app(ty_@2, cb), cc)) → new_esEs4(vyw28000, vyw29000, cb, cc)
new_lt9(vyw28000, vyw29000, cg) → new_esEs14(new_compare0(vyw28000, vyw29000, cg), LT)
new_compare6(vyw28000, vyw29000, ty_Integer) → new_compare19(vyw28000, vyw29000)
new_ltEs5(vyw28001, vyw29001, ty_Ordering) → new_ltEs13(vyw28001, vyw29001)
new_esEs19(vyw300, vyw4000, app(app(ty_Either, bfe), bff)) → new_esEs5(vyw300, vyw4000, bfe, bff)
new_ltEs19(vyw2800, vyw2900, ty_Float) → new_ltEs16(vyw2800, vyw2900)
new_esEs5(Left(vyw300), Left(vyw4000), app(ty_Maybe, cfa), ceg) → new_esEs6(vyw300, vyw4000, cfa)
new_pePe(False, vyw98) → vyw98
new_esEs26(vyw301, vyw4001, ty_Bool) → new_esEs10(vyw301, vyw4001)
new_esEs19(vyw300, vyw4000, ty_@0) → new_esEs15(vyw300, vyw4000)
new_lt19(vyw28001, vyw29001, ty_Double) → new_lt10(vyw28001, vyw29001)
new_ltEs19(vyw2800, vyw2900, app(app(ty_@2, h), cd)) → new_ltEs4(vyw2800, vyw2900, h, cd)
new_esEs8(vyw28000, vyw29000, ty_Float) → new_esEs16(vyw28000, vyw29000)
new_compare23(vyw28000, vyw29000, True) → EQ
new_esEs28(vyw301, vyw4001, ty_Integer) → new_esEs18(vyw301, vyw4001)
new_lt19(vyw28001, vyw29001, app(ty_[], bce)) → new_lt9(vyw28001, vyw29001, bce)
new_esEs19(vyw300, vyw4000, app(ty_Maybe, bfa)) → new_esEs6(vyw300, vyw4000, bfa)
new_esEs22(vyw300, vyw4000, ty_@0) → new_esEs15(vyw300, vyw4000)
new_ltEs5(vyw28001, vyw29001, app(app(ty_@2, ba), bb)) → new_ltEs4(vyw28001, vyw29001, ba, bb)
new_esEs22(vyw300, vyw4000, app(app(ty_@2, cbh), cca)) → new_esEs4(vyw300, vyw4000, cbh, cca)
new_ltEs14(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, baf, bcb) → new_pePe(new_lt20(vyw28000, vyw29000, bae), new_asAs(new_esEs23(vyw28000, vyw29000, bae), new_pePe(new_lt19(vyw28001, vyw29001, baf), new_asAs(new_esEs24(vyw28001, vyw29001, baf), new_ltEs20(vyw28002, vyw29002, bcb)))))
new_esEs14(EQ, EQ) → True
new_lt11(vyw28000, vyw29000, bec) → new_esEs14(new_compare12(vyw28000, vyw29000, bec), LT)
new_esEs19(vyw300, vyw4000, ty_Float) → new_esEs16(vyw300, vyw4000)
new_ltEs13(EQ, GT) → True
new_ltEs5(vyw28001, vyw29001, app(app(app(ty_@3, bg), bh), ca)) → new_ltEs14(vyw28001, vyw29001, bg, bh, ca)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, ty_@0) → new_esEs15(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(ty_Ratio, cef)) → new_ltEs11(vyw28000, vyw29000, cef)
new_compare111(vyw28000, vyw29000, False) → GT
new_compare111(vyw28000, vyw29000, True) → LT
new_esEs24(vyw28001, vyw29001, app(ty_[], bce)) → new_esEs11(vyw28001, vyw29001, bce)
new_ltEs5(vyw28001, vyw29001, app(ty_[], be)) → new_ltEs9(vyw28001, vyw29001, be)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, app(app(ty_@2, cge), cgf)) → new_esEs4(vyw300, vyw4000, cge, cgf)
new_lt20(vyw28000, vyw29000, app(app(ty_Either, bdd), bde)) → new_lt7(vyw28000, vyw29000, bdd, bde)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, ty_Char) → new_esEs17(vyw300, vyw4000)
new_ltEs20(vyw28002, vyw29002, app(app(ty_@2, bag), bah)) → new_ltEs4(vyw28002, vyw29002, bag, bah)
new_esEs23(vyw28000, vyw29000, app(app(app(ty_@3, bdh), bea), beb)) → new_esEs7(vyw28000, vyw29000, bdh, bea, beb)
new_primCmpNat0(Zero, Succ(vyw290000)) → LT
new_esEs26(vyw301, vyw4001, ty_Double) → new_esEs12(vyw301, vyw4001)
new_esEs20(vyw301, vyw4001, ty_Ordering) → new_esEs14(vyw301, vyw4001)
new_ltEs20(vyw28002, vyw29002, ty_Bool) → new_ltEs8(vyw28002, vyw29002)
new_lt19(vyw28001, vyw29001, app(app(ty_@2, bbh), bca)) → new_lt5(vyw28001, vyw29001, bbh, bca)
new_lt20(vyw28000, vyw29000, app(app(app(ty_@3, bdh), bea), beb)) → new_lt14(vyw28000, vyw29000, bdh, bea, beb)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(ty_Ratio, cag), dg) → new_ltEs11(vyw28000, vyw29000, cag)
new_esEs25(vyw300, vyw4000, app(app(ty_Either, dad), dae)) → new_esEs5(vyw300, vyw4000, dad, dae)
new_compare24(vyw28000, vyw29000, False, cb, cc) → new_compare110(vyw28000, vyw29000, new_ltEs4(vyw28000, vyw29000, cb, cc), cb, cc)
new_lt20(vyw28000, vyw29000, ty_@0) → new_lt15(vyw28000, vyw29000)
new_esEs21(vyw302, vyw4002, app(ty_Ratio, bhd)) → new_esEs13(vyw302, vyw4002, bhd)
new_lt19(vyw28001, vyw29001, ty_@0) → new_lt15(vyw28001, vyw29001)
new_esEs7(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), bee, bef, beg) → new_asAs(new_esEs19(vyw300, vyw4000, bee), new_asAs(new_esEs20(vyw301, vyw4001, bef), new_esEs21(vyw302, vyw4002, beg)))
new_esEs25(vyw300, vyw4000, app(ty_Ratio, chg)) → new_esEs13(vyw300, vyw4000, chg)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Double) → new_ltEs10(vyw28000, vyw29000)
new_compare0([], [], gb) → EQ
new_pePe(True, vyw98) → True
new_primEqNat0(Zero, Zero) → True
new_esEs6(Just(vyw300), Just(vyw4000), app(app(app(ty_@3, cec), ced), cee)) → new_esEs7(vyw300, vyw4000, cec, ced, cee)
new_esEs23(vyw28000, vyw29000, ty_Ordering) → new_esEs14(vyw28000, vyw29000)
new_ltEs19(vyw2800, vyw2900, ty_Integer) → new_ltEs18(vyw2800, vyw2900)
new_ltEs5(vyw28001, vyw29001, ty_Bool) → new_ltEs8(vyw28001, vyw29001)
new_esEs19(vyw300, vyw4000, app(ty_Ratio, beh)) → new_esEs13(vyw300, vyw4000, beh)
new_esEs26(vyw301, vyw4001, ty_Char) → new_esEs17(vyw301, vyw4001)
new_esEs19(vyw300, vyw4000, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs26(vyw301, vyw4001, app(ty_Maybe, dbb)) → new_esEs6(vyw301, vyw4001, dbb)
new_esEs8(vyw28000, vyw29000, ty_Int) → new_esEs9(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Int, ceg) → new_esEs9(vyw300, vyw4000)
new_lt4(vyw28000, vyw29000, ty_Char) → new_lt17(vyw28000, vyw29000)
new_esEs26(vyw301, vyw4001, app(ty_Ratio, dba)) → new_esEs13(vyw301, vyw4001, dba)
new_lt20(vyw28000, vyw29000, app(ty_[], bdf)) → new_lt9(vyw28000, vyw29000, bdf)
new_esEs25(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_compare110(vyw28000, vyw29000, False, cb, cc) → GT
new_ltEs15(vyw2800, vyw2900) → new_not(new_esEs14(new_compare16(vyw2800, vyw2900), GT))
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, ty_Double) → new_ltEs10(vyw28000, vyw29000)
new_ltEs20(vyw28002, vyw29002, app(app(app(ty_@3, bbe), bbf), bbg)) → new_ltEs14(vyw28002, vyw29002, bbe, bbf, bbg)
new_sr(vyw301, vyw4001) → new_primMulInt(vyw301, vyw4001)
new_esEs11(:(vyw300, vyw301), :(vyw4000, vyw4001), cbe) → new_asAs(new_esEs22(vyw300, vyw4000, cbe), new_esEs11(vyw301, vyw4001, cbe))
new_esEs14(LT, GT) → False
new_esEs14(GT, LT) → False
new_ltEs20(vyw28002, vyw29002, app(ty_Ratio, cdb)) → new_ltEs11(vyw28002, vyw29002, cdb)
new_primPlusNat0(Succ(vyw1000), vyw400100) → Succ(Succ(new_primPlusNat1(vyw1000, vyw400100)))
new_lt19(vyw28001, vyw29001, app(ty_Ratio, cda)) → new_lt11(vyw28001, vyw29001, cda)
new_esEs25(vyw300, vyw4000, ty_Float) → new_esEs16(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, app(app(app(ty_@3, bha), bhb), bhc)) → new_esEs7(vyw301, vyw4001, bha, bhb, bhc)
new_ltEs18(vyw2800, vyw2900) → new_not(new_esEs14(new_compare19(vyw2800, vyw2900), GT))
new_ltEs19(vyw2800, vyw2900, ty_Double) → new_ltEs10(vyw2800, vyw2900)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, app(ty_[], cgg)) → new_esEs11(vyw300, vyw4000, cgg)
new_lt20(vyw28000, vyw29000, ty_Char) → new_lt17(vyw28000, vyw29000)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_@0, dg) → new_ltEs15(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), app(ty_Ratio, ceh), ceg) → new_esEs13(vyw300, vyw4000, ceh)
new_ltEs20(vyw28002, vyw29002, ty_Float) → new_ltEs16(vyw28002, vyw29002)
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, ty_@0) → new_ltEs15(vyw28000, vyw29000)
new_lt4(vyw28000, vyw29000, app(app(ty_Either, ce), cf)) → new_lt7(vyw28000, vyw29000, ce, cf)
new_lt14(vyw28000, vyw29000, db, dc, dd) → new_esEs14(new_compare15(vyw28000, vyw29000, db, dc, dd), LT)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Int, dg) → new_ltEs6(vyw28000, vyw29000)
new_lt19(vyw28001, vyw29001, ty_Bool) → new_lt8(vyw28001, vyw29001)
new_primEqInt(Neg(Succ(vyw3000)), Neg(Succ(vyw40000))) → new_primEqNat0(vyw3000, vyw40000)
new_lt20(vyw28000, vyw29000, app(ty_Ratio, cch)) → new_lt11(vyw28000, vyw29000, cch)
new_compare6(vyw28000, vyw29000, ty_Bool) → new_compare10(vyw28000, vyw29000)
new_compare28(vyw28000, vyw29000, False) → new_compare113(vyw28000, vyw29000, new_ltEs13(vyw28000, vyw29000))
new_ltEs5(vyw28001, vyw29001, ty_Char) → new_ltEs17(vyw28001, vyw29001)
new_primCompAux0(vyw28000, vyw29000, vyw99, gb) → new_primCompAux00(vyw99, new_compare6(vyw28000, vyw29000, gb))
new_compare6(vyw28000, vyw29000, ty_Int) → new_compare8(vyw28000, vyw29000)
new_esEs12(Double(vyw300, vyw301), Double(vyw4000, vyw4001)) → new_esEs9(new_sr(vyw300, vyw4000), new_sr(vyw301, vyw4001))
new_esEs19(vyw300, vyw4000, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_primPlusNat1(Succ(vyw10000), Zero) → Succ(vyw10000)
new_primPlusNat1(Zero, Succ(vyw4001000)) → Succ(vyw4001000)
new_lt4(vyw28000, vyw29000, ty_Integer) → new_lt18(vyw28000, vyw29000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Bool) → new_ltEs8(vyw28000, vyw29000)
new_compare25(Just(vyw2800), Nothing, False, cbb) → GT
new_compare6(vyw28000, vyw29000, app(ty_Ratio, caf)) → new_compare12(vyw28000, vyw29000, caf)
new_esEs8(vyw28000, vyw29000, ty_@0) → new_esEs15(vyw28000, vyw29000)
new_compare25(Nothing, Nothing, False, cbb) → LT
new_ltEs8(True, True) → True
new_esEs26(vyw301, vyw4001, app(app(app(ty_@3, dbh), dca), dcb)) → new_esEs7(vyw301, vyw4001, dbh, dca, dcb)
new_esEs21(vyw302, vyw4002, ty_Ordering) → new_esEs14(vyw302, vyw4002)
new_esEs21(vyw302, vyw4002, ty_@0) → new_esEs15(vyw302, vyw4002)
new_ltEs13(LT, GT) → True
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, ty_Bool) → new_ltEs8(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), app(app(app(ty_@3, cfg), cfh), cga), ceg) → new_esEs7(vyw300, vyw4000, cfg, cfh, cga)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs24(vyw28001, vyw29001, ty_Bool) → new_esEs10(vyw28001, vyw29001)
new_ltEs7(Right(vyw28000), Left(vyw29000), eg, dg) → False
new_compare6(vyw28000, vyw29000, ty_Ordering) → new_compare14(vyw28000, vyw29000)
new_esEs8(vyw28000, vyw29000, app(ty_Ratio, bec)) → new_esEs13(vyw28000, vyw29000, bec)
new_compare8(vyw2800, vyw2900) → new_primCmpInt(vyw2800, vyw2900)
new_primEqInt(Neg(Succ(vyw3000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(vyw40000))) → False
new_lt12(vyw28000, vyw29000, da) → new_esEs14(new_compare13(vyw28000, vyw29000, da), LT)
new_lt20(vyw28000, vyw29000, ty_Ordering) → new_lt13(vyw28000, vyw29000)
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, app(ty_Ratio, cah)) → new_ltEs11(vyw28000, vyw29000, cah)
new_compare24(vyw28000, vyw29000, True, cb, cc) → EQ
new_lt4(vyw28000, vyw29000, ty_Bool) → new_lt8(vyw28000, vyw29000)
new_esEs10(False, False) → True
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, ty_Char) → new_ltEs17(vyw28000, vyw29000)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, ty_Int) → new_esEs9(vyw300, vyw4000)
new_ltEs19(vyw2800, vyw2900, ty_Char) → new_ltEs17(vyw2800, vyw2900)
new_esEs21(vyw302, vyw4002, ty_Integer) → new_esEs18(vyw302, vyw4002)
new_lt4(vyw28000, vyw29000, app(ty_Ratio, bec)) → new_lt11(vyw28000, vyw29000, bec)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(app(ty_@2, de), df), dg) → new_ltEs4(vyw28000, vyw29000, de, df)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_esEs5(Right(vyw300), Right(vyw4000), cgb, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs5(Left(vyw300), Left(vyw4000), app(ty_[], cfd), ceg) → new_esEs11(vyw300, vyw4000, cfd)
new_lt19(vyw28001, vyw29001, ty_Int) → new_lt6(vyw28001, vyw29001)
new_primCmpNat0(Succ(vyw280000), Succ(vyw290000)) → new_primCmpNat0(vyw280000, vyw290000)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_esEs6(Nothing, Nothing, cdc) → True
new_ltEs13(GT, LT) → False
new_primEqInt(Pos(Succ(vyw3000)), Pos(Succ(vyw40000))) → new_primEqNat0(vyw3000, vyw40000)
new_compare27(vyw28000, vyw29000, True, ce, cf) → EQ
new_esEs21(vyw302, vyw4002, app(ty_Maybe, bhe)) → new_esEs6(vyw302, vyw4002, bhe)
new_ltEs13(EQ, EQ) → True
new_esEs23(vyw28000, vyw29000, ty_Char) → new_esEs17(vyw28000, vyw29000)
new_lt4(vyw28000, vyw29000, app(ty_Maybe, da)) → new_lt12(vyw28000, vyw29000, da)
new_ltEs17(vyw2800, vyw2900) → new_not(new_esEs14(new_compare18(vyw2800, vyw2900), GT))
new_esEs25(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, app(app(ty_Either, cgh), cha)) → new_esEs5(vyw300, vyw4000, cgh, cha)
new_esEs8(vyw28000, vyw29000, ty_Integer) → new_esEs18(vyw28000, vyw29000)
new_esEs6(Just(vyw300), Nothing, cdc) → False
new_esEs6(Nothing, Just(vyw4000), cdc) → False
new_primEqNat0(Succ(vyw3000), Succ(vyw40000)) → new_primEqNat0(vyw3000, vyw40000)
new_lt5(vyw28000, vyw29000, cb, cc) → new_esEs14(new_compare7(vyw28000, vyw29000, cb, cc), LT)
new_primCompAux00(vyw109, LT) → LT
new_esEs26(vyw301, vyw4001, app(ty_[], dbe)) → new_esEs11(vyw301, vyw4001, dbe)
new_primCmpInt(Neg(Succ(vyw280000)), Neg(vyw29000)) → new_primCmpNat0(vyw29000, Succ(vyw280000))
new_ltEs19(vyw2800, vyw2900, app(app(ty_Either, eg), dg)) → new_ltEs7(vyw2800, vyw2900, eg, dg)
new_compare114(vyw28000, vyw29000, True, ce, cf) → LT
new_esEs26(vyw301, vyw4001, app(app(ty_@2, dbc), dbd)) → new_esEs4(vyw301, vyw4001, dbc, dbd)
new_compare115(vyw28000, vyw29000, True, db, dc, dd) → LT
new_ltEs7(Left(vyw28000), Left(vyw29000), app(ty_[], eb), dg) → new_ltEs9(vyw28000, vyw29000, eb)
new_lt19(vyw28001, vyw29001, app(app(ty_Either, bcc), bcd)) → new_lt7(vyw28001, vyw29001, bcc, bcd)
new_ltEs19(vyw2800, vyw2900, ty_Bool) → new_ltEs8(vyw2800, vyw2900)
new_primEqInt(Pos(Zero), Pos(Succ(vyw40000))) → False
new_primEqInt(Pos(Succ(vyw3000)), Pos(Zero)) → False
new_ltEs20(vyw28002, vyw29002, app(ty_Maybe, bbd)) → new_ltEs12(vyw28002, vyw29002, bbd)
new_lt4(vyw28000, vyw29000, app(ty_[], cg)) → new_lt9(vyw28000, vyw29000, cg)
new_lt13(vyw28000, vyw29000) → new_esEs14(new_compare14(vyw28000, vyw29000), LT)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(vyw280000), Zero) → GT
new_ltEs12(Just(vyw28000), Just(vyw29000), app(app(ty_@2, hd), he)) → new_ltEs4(vyw28000, vyw29000, hd, he)
new_compare9(vyw28000, vyw29000, ce, cf) → new_compare27(vyw28000, vyw29000, new_esEs5(vyw28000, vyw29000, ce, cf), ce, cf)
new_esEs24(vyw28001, vyw29001, ty_@0) → new_esEs15(vyw28001, vyw29001)
new_primCmpInt(Neg(Zero), Pos(Succ(vyw290000))) → LT
new_esEs20(vyw301, vyw4001, app(app(ty_Either, bgg), bgh)) → new_esEs5(vyw301, vyw4001, bgg, bgh)
new_esEs22(vyw300, vyw4000, app(ty_Ratio, cbf)) → new_esEs13(vyw300, vyw4000, cbf)
new_sr0(Integer(vyw280000), Integer(vyw290010)) → Integer(new_primMulInt(vyw280000, vyw290010))
new_lt4(vyw28000, vyw29000, app(app(ty_@2, cb), cc)) → new_lt5(vyw28000, vyw29000, cb, cc)
new_primPlusNat1(Succ(vyw10000), Succ(vyw4001000)) → Succ(Succ(new_primPlusNat1(vyw10000, vyw4001000)))
new_ltEs11(vyw2800, vyw2900, cbc) → new_not(new_esEs14(new_compare12(vyw2800, vyw2900, cbc), GT))
new_primEqInt(Neg(Succ(vyw3000)), Pos(vyw4000)) → False
new_primEqInt(Pos(Succ(vyw3000)), Neg(vyw4000)) → False
new_esEs24(vyw28001, vyw29001, app(ty_Ratio, cda)) → new_esEs13(vyw28001, vyw29001, cda)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(ty_Maybe, baa)) → new_ltEs12(vyw28000, vyw29000, baa)
new_esEs24(vyw28001, vyw29001, app(app(ty_@2, bbh), bca)) → new_esEs4(vyw28001, vyw29001, bbh, bca)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, app(app(ty_Either, ge), gf)) → new_compare9(vyw28000, vyw29000, ge, gf)
new_esEs8(vyw28000, vyw29000, app(app(ty_Either, ce), cf)) → new_esEs5(vyw28000, vyw29000, ce, cf)
new_ltEs19(vyw2800, vyw2900, ty_@0) → new_ltEs15(vyw2800, vyw2900)
new_ltEs20(vyw28002, vyw29002, ty_Double) → new_ltEs10(vyw28002, vyw29002)
new_esEs11([], :(vyw4000, vyw4001), cbe) → False
new_esEs11(:(vyw300, vyw301), [], cbe) → False
new_ltEs20(vyw28002, vyw29002, ty_Integer) → new_ltEs18(vyw28002, vyw29002)
new_esEs26(vyw301, vyw4001, ty_Int) → new_esEs9(vyw301, vyw4001)
new_esEs8(vyw28000, vyw29000, ty_Char) → new_esEs17(vyw28000, vyw29000)
new_primEqInt(Pos(Zero), Neg(Succ(vyw40000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(vyw40000))) → False
new_esEs4(@2(vyw300, vyw301), @2(vyw4000, vyw4001), che, chf) → new_asAs(new_esEs25(vyw300, vyw4000, che), new_esEs26(vyw301, vyw4001, chf))
new_esEs5(Left(vyw300), Left(vyw4000), app(app(ty_@2, cfb), cfc), ceg) → new_esEs4(vyw300, vyw4000, cfb, cfc)
new_esEs22(vyw300, vyw4000, app(ty_[], ccb)) → new_esEs11(vyw300, vyw4000, ccb)
new_compare23(vyw28000, vyw29000, False) → new_compare111(vyw28000, vyw29000, new_ltEs8(vyw28000, vyw29000))
new_primCmpInt(Pos(Zero), Pos(Succ(vyw290000))) → new_primCmpNat0(Zero, Succ(vyw290000))
new_primCompAux00(vyw109, EQ) → vyw109
new_esEs20(vyw301, vyw4001, ty_Bool) → new_esEs10(vyw301, vyw4001)
new_compare7(vyw28000, vyw29000, cb, cc) → new_compare24(vyw28000, vyw29000, new_esEs4(vyw28000, vyw29000, cb, cc), cb, cc)
new_ltEs13(GT, EQ) → False
new_esEs24(vyw28001, vyw29001, ty_Ordering) → new_esEs14(vyw28001, vyw29001)
new_compare25(Nothing, Just(vyw2900), False, cbb) → LT
new_ltEs13(EQ, LT) → False
new_esEs6(Just(vyw300), Just(vyw4000), ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs25(vyw300, vyw4000, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs26(vyw301, vyw4001, ty_Float) → new_esEs16(vyw301, vyw4001)
new_compare6(vyw28000, vyw29000, ty_Double) → new_compare11(vyw28000, vyw29000)
new_ltEs8(True, False) → False
new_esEs24(vyw28001, vyw29001, ty_Integer) → new_esEs18(vyw28001, vyw29001)
new_compare113(vyw28000, vyw29000, True) → LT
new_not(False) → True
new_esEs22(vyw300, vyw4000, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, ty_Char) → new_compare18(vyw28000, vyw29000)
new_compare114(vyw28000, vyw29000, False, ce, cf) → GT
new_lt20(vyw28000, vyw29000, ty_Bool) → new_lt8(vyw28000, vyw29000)
new_esEs8(vyw28000, vyw29000, app(ty_Maybe, da)) → new_esEs6(vyw28000, vyw29000, da)
new_primCmpInt(Pos(Succ(vyw280000)), Pos(vyw29000)) → new_primCmpNat0(Succ(vyw280000), vyw29000)
new_ltEs20(vyw28002, vyw29002, ty_Ordering) → new_ltEs13(vyw28002, vyw29002)
new_esEs23(vyw28000, vyw29000, ty_@0) → new_esEs15(vyw28000, vyw29000)
new_primPlusNat0(Zero, vyw400100) → Succ(vyw400100)
new_ltEs5(vyw28001, vyw29001, app(ty_Ratio, bed)) → new_ltEs11(vyw28001, vyw29001, bed)
new_esEs8(vyw28000, vyw29000, app(ty_[], cg)) → new_esEs11(vyw28000, vyw29000, cg)
new_esEs19(vyw300, vyw4000, ty_Char) → new_esEs17(vyw300, vyw4000)
new_compare113(vyw28000, vyw29000, False) → GT
new_esEs19(vyw300, vyw4000, ty_Double) → new_esEs12(vyw300, vyw4000)
new_ltEs19(vyw2800, vyw2900, ty_Int) → new_ltEs6(vyw2800, vyw2900)
new_esEs25(vyw300, vyw4000, ty_@0) → new_esEs15(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, app(ty_[], bgf)) → new_esEs11(vyw301, vyw4001, bgf)
new_compare0(:(vyw28000, vyw28001), [], gb) → GT
new_lt20(vyw28000, vyw29000, ty_Int) → new_lt6(vyw28000, vyw29000)
new_compare28(vyw28000, vyw29000, True) → EQ
new_esEs26(vyw301, vyw4001, app(app(ty_Either, dbf), dbg)) → new_esEs5(vyw301, vyw4001, dbf, dbg)
new_lt8(vyw28000, vyw29000) → new_esEs14(new_compare10(vyw28000, vyw29000), LT)
new_primCmpInt(Pos(Succ(vyw280000)), Neg(vyw29000)) → GT
new_esEs22(vyw300, vyw4000, app(app(app(ty_@3, cce), ccf), ccg)) → new_esEs7(vyw300, vyw4000, cce, ccf, ccg)
new_esEs8(vyw28000, vyw29000, app(app(app(ty_@3, db), dc), dd)) → new_esEs7(vyw28000, vyw29000, db, dc, dd)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(app(ty_Either, hf), hg)) → new_ltEs7(vyw28000, vyw29000, hf, hg)
new_lt19(vyw28001, vyw29001, ty_Char) → new_lt17(vyw28001, vyw29001)
new_lt19(vyw28001, vyw29001, app(app(app(ty_@3, bcg), bch), bda)) → new_lt14(vyw28001, vyw29001, bcg, bch, bda)
new_compare115(vyw28000, vyw29000, False, db, dc, dd) → GT
new_lt19(vyw28001, vyw29001, ty_Float) → new_lt16(vyw28001, vyw29001)
new_primMulInt(Pos(vyw3010), Pos(vyw40010)) → Pos(new_primMulNat0(vyw3010, vyw40010))
new_esEs21(vyw302, vyw4002, app(app(ty_@2, bhf), bhg)) → new_esEs4(vyw302, vyw4002, bhf, bhg)
new_lt4(vyw28000, vyw29000, ty_@0) → new_lt15(vyw28000, vyw29000)
new_compare19(Integer(vyw28000), Integer(vyw29000)) → new_primCmpInt(vyw28000, vyw29000)
new_esEs10(True, True) → True
new_esEs5(Right(vyw300), Left(vyw4000), cgb, ceg) → False
new_esEs5(Left(vyw300), Right(vyw4000), cgb, ceg) → False
new_lt4(vyw28000, vyw29000, ty_Float) → new_lt16(vyw28000, vyw29000)
new_primMulInt(Neg(vyw3010), Neg(vyw40010)) → Pos(new_primMulNat0(vyw3010, vyw40010))
new_ltEs5(vyw28001, vyw29001, app(ty_Maybe, bf)) → new_ltEs12(vyw28001, vyw29001, bf)
new_ltEs8(False, False) → True
new_primEqNat0(Succ(vyw3000), Zero) → False
new_primEqNat0(Zero, Succ(vyw40000)) → False
new_esEs21(vyw302, vyw4002, ty_Int) → new_esEs9(vyw302, vyw4002)
new_ltEs19(vyw2800, vyw2900, app(app(app(ty_@3, bae), baf), bcb)) → new_ltEs14(vyw2800, vyw2900, bae, baf, bcb)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(app(ty_Either, dh), ea), dg) → new_ltEs7(vyw28000, vyw29000, dh, ea)
new_esEs25(vyw300, vyw4000, app(ty_Maybe, chh)) → new_esEs6(vyw300, vyw4000, chh)
new_esEs20(vyw301, vyw4001, ty_@0) → new_esEs15(vyw301, vyw4001)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs16(vyw2800, vyw2900) → new_not(new_esEs14(new_compare17(vyw2800, vyw2900), GT))
new_esEs25(vyw300, vyw4000, app(ty_[], dac)) → new_esEs11(vyw300, vyw4000, dac)
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, app(app(app(ty_@3, fg), fh), ga)) → new_ltEs14(vyw28000, vyw29000, fg, fh, ga)
new_esEs22(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, app(ty_Maybe, ff)) → new_ltEs12(vyw28000, vyw29000, ff)
new_esEs26(vyw301, vyw4001, ty_Ordering) → new_esEs14(vyw301, vyw4001)
new_ltEs5(vyw28001, vyw29001, ty_Int) → new_ltEs6(vyw28001, vyw29001)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Char, dg) → new_ltEs17(vyw28000, vyw29000)
new_esEs24(vyw28001, vyw29001, ty_Int) → new_esEs9(vyw28001, vyw29001)
new_lt4(vyw28000, vyw29000, ty_Int) → new_lt6(vyw28000, vyw29000)
new_esEs14(LT, EQ) → False
new_esEs14(EQ, LT) → False
new_esEs21(vyw302, vyw4002, ty_Char) → new_esEs17(vyw302, vyw4002)
new_primCmpInt(Neg(Zero), Neg(Succ(vyw290000))) → new_primCmpNat0(Succ(vyw290000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(vyw290000))) → GT
new_lt20(vyw28000, vyw29000, ty_Float) → new_lt16(vyw28000, vyw29000)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, app(app(app(ty_@3, chb), chc), chd)) → new_esEs7(vyw300, vyw4000, chb, chc, chd)
new_esEs27(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Integer, ceg) → new_esEs18(vyw300, vyw4000)
new_esEs23(vyw28000, vyw29000, app(ty_[], bdf)) → new_esEs11(vyw28000, vyw29000, bdf)
new_compare26(vyw28000, vyw29000, False, db, dc, dd) → new_compare115(vyw28000, vyw29000, new_ltEs14(vyw28000, vyw29000, db, dc, dd), db, dc, dd)
new_esEs6(Just(vyw300), Just(vyw4000), app(app(ty_Either, cea), ceb)) → new_esEs5(vyw300, vyw4000, cea, ceb)
new_lt4(vyw28000, vyw29000, ty_Ordering) → new_lt13(vyw28000, vyw29000)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Double, dg) → new_ltEs10(vyw28000, vyw29000)
new_ltEs9(vyw2800, vyw2900, gb) → new_not(new_esEs14(new_compare0(vyw2800, vyw2900, gb), GT))
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Ordering, dg) → new_ltEs13(vyw28000, vyw29000)
new_esEs14(EQ, GT) → False
new_esEs14(GT, EQ) → False
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs24(vyw28001, vyw29001, app(app(app(ty_@3, bcg), bch), bda)) → new_esEs7(vyw28001, vyw29001, bcg, bch, bda)
new_compare17(Float(vyw28000, vyw28001), Float(vyw29000, vyw29001)) → new_compare8(new_sr(vyw28000, vyw29000), new_sr(vyw28001, vyw29001))
new_esEs5(Left(vyw300), Left(vyw4000), ty_Bool, ceg) → new_esEs10(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, app(ty_Maybe, bgc)) → new_esEs6(vyw301, vyw4001, bgc)
new_compare13(vyw28000, vyw29000, da) → new_compare25(vyw28000, vyw29000, new_esEs6(vyw28000, vyw29000, da), da)
new_lt19(vyw28001, vyw29001, ty_Ordering) → new_lt13(vyw28001, vyw29001)
new_ltEs13(GT, GT) → True
new_esEs24(vyw28001, vyw29001, ty_Double) → new_esEs12(vyw28001, vyw29001)
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, app(app(ty_Either, fb), fc)) → new_ltEs7(vyw28000, vyw29000, fb, fc)
new_esEs15(@0, @0) → True
new_lt17(vyw28000, vyw29000) → new_esEs14(new_compare18(vyw28000, vyw29000), LT)
new_esEs13(:%(vyw300, vyw301), :%(vyw4000, vyw4001), dcc) → new_asAs(new_esEs27(vyw300, vyw4000, dcc), new_esEs28(vyw301, vyw4001, dcc))
new_asAs(False, vyw91) → False
new_esEs22(vyw300, vyw4000, ty_Double) → new_esEs12(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Integer) → new_ltEs18(vyw28000, vyw29000)
new_primMulInt(Pos(vyw3010), Neg(vyw40010)) → Neg(new_primMulNat0(vyw3010, vyw40010))
new_primMulInt(Neg(vyw3010), Pos(vyw40010)) → Neg(new_primMulNat0(vyw3010, vyw40010))
new_esEs6(Just(vyw300), Just(vyw4000), app(ty_[], cdh)) → new_esEs11(vyw300, vyw4000, cdh)
new_esEs22(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_primMulNat0(Succ(vyw30100), Zero) → Zero
new_primMulNat0(Zero, Succ(vyw400100)) → Zero
new_esEs21(vyw302, vyw4002, app(app(ty_Either, caa), cab)) → new_esEs5(vyw302, vyw4002, caa, cab)
new_esEs6(Just(vyw300), Just(vyw4000), app(ty_Maybe, cde)) → new_esEs6(vyw300, vyw4000, cde)
new_esEs19(vyw300, vyw4000, app(ty_[], bfd)) → new_esEs11(vyw300, vyw4000, bfd)
new_esEs23(vyw28000, vyw29000, ty_Int) → new_esEs9(vyw28000, vyw29000)
new_esEs27(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, ty_Float) → new_esEs16(vyw301, vyw4001)
new_esEs18(Integer(vyw300), Integer(vyw4000)) → new_primEqInt(vyw300, vyw4000)
new_esEs6(Just(vyw300), Just(vyw4000), app(app(ty_@2, cdf), cdg)) → new_esEs4(vyw300, vyw4000, cdf, cdg)
new_lt19(vyw28001, vyw29001, app(ty_Maybe, bcf)) → new_lt12(vyw28001, vyw29001, bcf)
new_esEs23(vyw28000, vyw29000, app(ty_Maybe, bdg)) → new_esEs6(vyw28000, vyw29000, bdg)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Float, dg) → new_ltEs16(vyw28000, vyw29000)
new_lt4(vyw28000, vyw29000, app(app(app(ty_@3, db), dc), dd)) → new_lt14(vyw28000, vyw29000, db, dc, dd)
new_esEs8(vyw28000, vyw29000, ty_Bool) → new_esEs10(vyw28000, vyw29000)
new_ltEs12(Nothing, Just(vyw29000), cbd) → True
new_ltEs7(Left(vyw28000), Left(vyw29000), app(ty_Maybe, ec), dg) → new_ltEs12(vyw28000, vyw29000, ec)
new_esEs14(GT, GT) → True
new_esEs8(vyw28000, vyw29000, ty_Ordering) → new_esEs14(vyw28000, vyw29000)
new_esEs20(vyw301, vyw4001, app(app(ty_@2, bgd), bge)) → new_esEs4(vyw301, vyw4001, bgd, bge)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(app(app(ty_@3, ed), ee), ef), dg) → new_ltEs14(vyw28000, vyw29000, ed, ee, ef)
new_esEs23(vyw28000, vyw29000, ty_Bool) → new_esEs10(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), ty_@0, ceg) → new_esEs15(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Ordering) → new_ltEs13(vyw28000, vyw29000)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, app(ty_Maybe, cgd)) → new_esEs6(vyw300, vyw4000, cgd)
new_esEs22(vyw300, vyw4000, ty_Float) → new_esEs16(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(app(app(ty_@3, bab), bac), bad)) → new_ltEs14(vyw28000, vyw29000, bab, bac, bad)
new_esEs25(vyw300, vyw4000, app(app(app(ty_@3, daf), dag), dah)) → new_esEs7(vyw300, vyw4000, daf, dag, dah)
new_ltEs20(vyw28002, vyw29002, app(app(ty_Either, bba), bbb)) → new_ltEs7(vyw28002, vyw29002, bba, bbb)
new_compare12(:%(vyw28000, vyw28001), :%(vyw29000, vyw29001), ty_Int) → new_compare8(new_sr(vyw28000, vyw29001), new_sr(vyw29000, vyw28001))
new_compare25(Just(vyw2800), Just(vyw2900), False, cbb) → new_compare112(vyw2800, vyw2900, new_ltEs19(vyw2800, vyw2900, cbb), cbb)
new_esEs26(vyw301, vyw4001, ty_Integer) → new_esEs18(vyw301, vyw4001)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Char) → new_ltEs17(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), app(app(ty_Either, cfe), cff), ceg) → new_esEs5(vyw300, vyw4000, cfe, cff)
new_compare18(Char(vyw28000), Char(vyw29000)) → new_primCmpNat0(vyw28000, vyw29000)
new_ltEs5(vyw28001, vyw29001, ty_Double) → new_ltEs10(vyw28001, vyw29001)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Float) → new_esEs16(vyw300, vyw4000)
new_esEs21(vyw302, vyw4002, ty_Double) → new_esEs12(vyw302, vyw4002)
new_esEs21(vyw302, vyw4002, app(ty_[], bhh)) → new_esEs11(vyw302, vyw4002, bhh)
new_esEs28(vyw301, vyw4001, ty_Int) → new_esEs9(vyw301, vyw4001)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Integer) → new_esEs18(vyw300, vyw4000)
new_compare112(vyw84, vyw85, False, cba) → GT
new_ltEs13(LT, LT) → True
new_esEs23(vyw28000, vyw29000, ty_Double) → new_esEs12(vyw28000, vyw29000)
new_esEs20(vyw301, vyw4001, ty_Char) → new_esEs17(vyw301, vyw4001)
new_compare26(vyw28000, vyw29000, True, db, dc, dd) → EQ
new_esEs6(Just(vyw300), Just(vyw4000), ty_@0) → new_esEs15(vyw300, vyw4000)
new_lt7(vyw28000, vyw29000, ce, cf) → new_esEs14(new_compare9(vyw28000, vyw29000, ce, cf), LT)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Integer, dg) → new_ltEs18(vyw28000, vyw29000)
new_compare0([], :(vyw29000, vyw29001), gb) → LT
new_primPlusNat1(Zero, Zero) → Zero
new_ltEs5(vyw28001, vyw29001, app(app(ty_Either, bc), bd)) → new_ltEs7(vyw28001, vyw29001, bc, bd)
new_asAs(True, vyw91) → vyw91
new_esEs24(vyw28001, vyw29001, ty_Float) → new_esEs16(vyw28001, vyw29001)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, ty_Double) → new_esEs12(vyw300, vyw4000)
new_ltEs5(vyw28001, vyw29001, ty_Float) → new_ltEs16(vyw28001, vyw29001)
new_primMulNat0(Succ(vyw30100), Succ(vyw400100)) → new_primPlusNat0(new_primMulNat0(vyw30100, Succ(vyw400100)), vyw400100)
new_ltEs5(vyw28001, vyw29001, ty_Integer) → new_ltEs18(vyw28001, vyw29001)
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, ty_Ordering) → new_ltEs13(vyw28000, vyw29000)
new_esEs10(False, True) → False
new_esEs10(True, False) → False
new_esEs14(LT, LT) → True
new_ltEs12(Just(vyw28000), Nothing, cbd) → False
new_lt16(vyw28000, vyw29000) → new_esEs14(new_compare17(vyw28000, vyw29000), LT)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Float, ceg) → new_esEs16(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, ty_Integer) → new_esEs18(vyw301, vyw4001)
new_compare6(vyw28000, vyw29000, app(ty_Maybe, gh)) → new_compare13(vyw28000, vyw29000, gh)
new_esEs25(vyw300, vyw4000, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, ty_Float) → new_ltEs16(vyw28000, vyw29000)
new_esEs9(vyw30, vyw400) → new_primEqInt(vyw30, vyw400)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Bool, dg) → new_ltEs8(vyw28000, vyw29000)
new_esEs24(vyw28001, vyw29001, app(ty_Maybe, bcf)) → new_esEs6(vyw28001, vyw29001, bcf)
new_esEs21(vyw302, vyw4002, ty_Bool) → new_esEs10(vyw302, vyw4002)
new_ltEs20(vyw28002, vyw29002, ty_Int) → new_ltEs6(vyw28002, vyw29002)
new_lt10(vyw28000, vyw29000) → new_esEs14(new_compare11(vyw28000, vyw29000), LT)
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, ty_Integer) → new_ltEs18(vyw28000, vyw29000)
new_esEs19(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_ltEs5(vyw28001, vyw29001, ty_@0) → new_ltEs15(vyw28001, vyw29001)
new_esEs22(vyw300, vyw4000, app(app(ty_Either, ccc), ccd)) → new_esEs5(vyw300, vyw4000, ccc, ccd)
new_lt20(vyw28000, vyw29000, ty_Double) → new_lt10(vyw28000, vyw29000)
new_primCompAux00(vyw109, GT) → GT
new_esEs21(vyw302, vyw4002, ty_Float) → new_esEs16(vyw302, vyw4002)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_esEs19(vyw300, vyw4000, app(app(ty_@2, bfb), bfc)) → new_esEs4(vyw300, vyw4000, bfb, bfc)
new_ltEs10(vyw2800, vyw2900) → new_not(new_esEs14(new_compare11(vyw2800, vyw2900), GT))
new_lt20(vyw28000, vyw29000, app(ty_Maybe, bdg)) → new_lt12(vyw28000, vyw29000, bdg)
new_esEs5(Right(vyw300), Right(vyw4000), cgb, app(ty_Ratio, cgc)) → new_esEs13(vyw300, vyw4000, cgc)
new_ltEs20(vyw28002, vyw29002, ty_Char) → new_ltEs17(vyw28002, vyw29002)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primCmpInt(Neg(Succ(vyw280000)), Pos(vyw29000)) → LT
new_compare15(vyw28000, vyw29000, db, dc, dd) → new_compare26(vyw28000, vyw29000, new_esEs7(vyw28000, vyw29000, db, dc, dd), db, dc, dd)
new_compare11(Double(vyw28000, vyw28001), Double(vyw29000, vyw29001)) → new_compare8(new_sr(vyw28000, vyw29000), new_sr(vyw28001, vyw29001))
new_ltEs7(Right(vyw28000), Right(vyw29000), eg, ty_Int) → new_ltEs6(vyw28000, vyw29000)
new_not(True) → False
new_ltEs19(vyw2800, vyw2900, ty_Ordering) → new_ltEs13(vyw2800, vyw2900)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Char, ceg) → new_esEs17(vyw300, vyw4000)
new_ltEs4(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), h, cd) → new_pePe(new_lt4(vyw28000, vyw29000, h), new_asAs(new_esEs8(vyw28000, vyw29000, h), new_ltEs5(vyw28001, vyw29001, cd)))
new_compare6(vyw28000, vyw29000, app(app(ty_@2, gc), gd)) → new_compare7(vyw28000, vyw29000, gc, gd)
The set Q consists of the following terms:
new_pePe(True, x0)
new_esEs20(x0, x1, app(ty_[], x2))
new_esEs11([], :(x0, x1), x2)
new_ltEs12(Just(x0), Nothing, x1)
new_esEs21(x0, x1, ty_Integer)
new_compare27(x0, x1, False, x2, x3)
new_compare24(x0, x1, True, x2, x3)
new_compare6(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_@0)
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs25(x0, x1, ty_Integer)
new_esEs23(x0, x1, ty_Ordering)
new_esEs22(x0, x1, ty_Char)
new_esEs14(GT, EQ)
new_esEs14(EQ, GT)
new_compare6(x0, x1, app(ty_[], x2))
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_esEs21(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_Float)
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_compare6(x0, x1, ty_Float)
new_lt11(x0, x1, x2)
new_ltEs12(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs24(x0, x1, ty_Char)
new_compare6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs15(x0, x1)
new_esEs5(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_pePe(False, x0)
new_esEs25(x0, x1, ty_Ordering)
new_lt4(x0, x1, ty_Integer)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_ltEs5(x0, x1, ty_Float)
new_esEs26(x0, x1, ty_Float)
new_esEs23(x0, x1, ty_Double)
new_esEs24(x0, x1, ty_Bool)
new_lt4(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1)
new_esEs20(x0, x1, ty_Integer)
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, ty_Int)
new_lt19(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs28(x0, x1, ty_Integer)
new_ltEs7(Left(x0), Left(x1), ty_Char, x2)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primPlusNat1(Succ(x0), Zero)
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Nothing, Nothing, x0)
new_esEs22(x0, x1, ty_Ordering)
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs7(Left(x0), Left(x1), ty_Bool, x2)
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_compare6(x0, x1, ty_Double)
new_ltEs18(x0, x1)
new_compare12(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs6(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs25(x0, x1, ty_Float)
new_ltEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs7(Right(x0), Right(x1), x2, ty_Double)
new_esEs21(x0, x1, ty_@0)
new_esEs24(x0, x1, ty_Int)
new_ltEs12(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs8(True, True)
new_esEs5(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Succ(x0), Succ(x1))
new_ltEs19(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, ty_Int)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_ltEs20(x0, x1, app(ty_[], x2))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_compare6(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Integer)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_compare114(x0, x1, False, x2, x3)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_esEs6(Just(x0), Just(x1), ty_Char)
new_compare28(x0, x1, True)
new_ltEs12(Just(x0), Just(x1), ty_@0)
new_esEs5(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs7(Right(x0), Right(x1), x2, ty_@0)
new_esEs14(LT, GT)
new_esEs14(GT, LT)
new_compare6(x0, x1, app(app(ty_@2, x2), x3))
new_lt19(x0, x1, ty_Integer)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare15(x0, x1, x2, x3, x4)
new_compare0(:(x0, x1), :(x2, x3), x4)
new_esEs5(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_asAs(True, x0)
new_ltEs20(x0, x1, ty_Ordering)
new_ltEs9(x0, x1, x2)
new_ltEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs5(x0, x1, ty_Double)
new_ltEs14(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqNat0(Zero, Zero)
new_lt19(x0, x1, app(ty_Ratio, x2))
new_esEs25(x0, x1, ty_Int)
new_esEs6(Just(x0), Nothing, x1)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs21(x0, x1, ty_Char)
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_compare111(x0, x1, False)
new_compare13(x0, x1, x2)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(EQ, EQ)
new_esEs19(x0, x1, ty_Bool)
new_esEs27(x0, x1, ty_Int)
new_esEs26(x0, x1, ty_Integer)
new_esEs23(x0, x1, ty_@0)
new_ltEs10(x0, x1)
new_lt8(x0, x1)
new_primMulNat0(Zero, Zero)
new_lt13(x0, x1)
new_compare113(x0, x1, True)
new_ltEs12(Nothing, Just(x0), x1)
new_esEs10(False, True)
new_esEs10(True, False)
new_ltEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs24(x0, x1, app(ty_[], x2))
new_esEs6(Just(x0), Just(x1), app(ty_[], x2))
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs5(Left(x0), Left(x1), ty_@0, x2)
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_compare25(Just(x0), Nothing, False, x1)
new_primMulNat0(Zero, Succ(x0))
new_ltEs20(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs22(x0, x1, ty_Float)
new_ltEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_compare26(x0, x1, True, x2, x3, x4)
new_ltEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_compare7(x0, x1, x2, x3)
new_esEs20(x0, x1, ty_Int)
new_ltEs13(LT, EQ)
new_ltEs13(EQ, LT)
new_primPlusNat0(Succ(x0), x1)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_lt19(x0, x1, app(ty_[], x2))
new_esEs19(x0, x1, ty_Integer)
new_esEs22(x0, x1, ty_Int)
new_ltEs19(x0, x1, ty_Integer)
new_lt19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, ty_Ordering)
new_ltEs12(Just(x0), Just(x1), ty_Bool)
new_lt4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs26(x0, x1, ty_@0)
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs5(Left(x0), Left(x1), ty_Bool, x2)
new_sr(x0, x1)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpNat0(Zero, Succ(x0))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs11(:(x0, x1), [], x2)
new_esEs5(Left(x0), Left(x1), ty_Float, x2)
new_lt4(x0, x1, ty_Double)
new_primEqNat0(Zero, Succ(x0))
new_esEs23(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), app(ty_Ratio, x2))
new_asAs(False, x0)
new_ltEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs24(x0, x1, ty_Double)
new_ltEs6(x0, x1)
new_primMulInt(Pos(x0), Pos(x1))
new_esEs24(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Char)
new_esEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs20(x0, x1, ty_@0)
new_compare28(x0, x1, False)
new_compare112(x0, x1, False, x2)
new_esEs22(x0, x1, ty_@0)
new_esEs6(Just(x0), Just(x1), ty_Bool)
new_lt4(x0, x1, ty_Int)
new_ltEs12(Just(x0), Just(x1), app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_compare16(@0, @0)
new_ltEs7(Right(x0), Left(x1), x2, x3)
new_ltEs7(Left(x0), Left(x1), ty_@0, x2)
new_ltEs7(Left(x0), Right(x1), x2, x3)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_ltEs19(x0, x1, ty_Bool)
new_lt19(x0, x1, app(ty_Maybe, x2))
new_esEs12(Double(x0, x1), Double(x2, x3))
new_esEs5(Left(x0), Left(x1), app(ty_[], x2), x3)
new_compare17(Float(x0, x1), Float(x2, x3))
new_esEs23(x0, x1, ty_Float)
new_compare0([], [], x0)
new_lt19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(Just(x0), Just(x1), ty_@0)
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_ltEs12(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Integer)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_primPlusNat1(Zero, Zero)
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs5(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs14(LT, LT)
new_esEs10(True, True)
new_esEs24(x0, x1, ty_Float)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs19(x0, x1, ty_Int)
new_esEs22(x0, x1, ty_Double)
new_ltEs20(x0, x1, ty_Integer)
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt19(x0, x1, ty_@0)
new_primCmpInt(Neg(Zero), Neg(Zero))
new_ltEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_compare113(x0, x1, False)
new_compare6(x0, x1, ty_Integer)
new_compare110(x0, x1, False, x2, x3)
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs5(Left(x0), Left(x1), ty_Ordering, x2)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs8(x0, x1, ty_@0)
new_primCompAux0(x0, x1, x2, x3)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs12(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs5(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Float)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_compare115(x0, x1, True, x2, x3, x4)
new_lt20(x0, x1, app(ty_[], x2))
new_compare10(x0, x1)
new_esEs22(x0, x1, ty_Bool)
new_esEs27(x0, x1, ty_Integer)
new_compare25(Nothing, Just(x0), False, x1)
new_esEs8(x0, x1, ty_Double)
new_lt20(x0, x1, ty_Integer)
new_ltEs13(EQ, GT)
new_ltEs13(GT, EQ)
new_esEs26(x0, x1, ty_Double)
new_esEs6(Just(x0), Just(x1), ty_Float)
new_compare6(x0, x1, app(ty_Maybe, x2))
new_ltEs8(False, False)
new_lt20(x0, x1, ty_Double)
new_esEs21(x0, x1, ty_Int)
new_compare6(x0, x1, app(ty_Ratio, x2))
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_ltEs19(x0, x1, ty_Float)
new_esEs5(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs8(x0, x1, ty_Int)
new_ltEs7(Left(x0), Left(x1), ty_Int, x2)
new_compare27(x0, x1, True, x2, x3)
new_primMulInt(Neg(x0), Neg(x1))
new_compare114(x0, x1, True, x2, x3)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs8(x0, x1, ty_Float)
new_ltEs8(False, True)
new_ltEs8(True, False)
new_lt4(x0, x1, ty_Bool)
new_ltEs12(Just(x0), Just(x1), ty_Int)
new_esEs5(Right(x0), Right(x1), x2, ty_Double)
new_compare110(x0, x1, True, x2, x3)
new_compare19(Integer(x0), Integer(x1))
new_esEs5(Left(x0), Left(x1), ty_Int, x2)
new_esEs25(x0, x1, ty_Char)
new_ltEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_lt18(x0, x1)
new_ltEs13(LT, GT)
new_ltEs13(GT, LT)
new_primCompAux00(x0, EQ)
new_esEs21(x0, x1, ty_Double)
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_ltEs7(Left(x0), Left(x1), ty_Integer, x2)
new_ltEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs5(Right(x0), Right(x1), x2, ty_Int)
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs5(Right(x0), Right(x1), x2, ty_Char)
new_lt5(x0, x1, x2, x3)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_sr0(Integer(x0), Integer(x1))
new_ltEs19(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Double)
new_compare18(Char(x0), Char(x1))
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, ty_Bool)
new_esEs5(Right(x0), Right(x1), x2, ty_Float)
new_ltEs5(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), ty_Ordering)
new_esEs20(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), ty_Integer)
new_esEs6(Nothing, Just(x0), x1)
new_compare8(x0, x1)
new_ltEs12(Just(x0), Just(x1), app(ty_Ratio, x2))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs12(Just(x0), Just(x1), ty_Float)
new_ltEs19(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_primCompAux00(x0, LT)
new_lt17(x0, x1)
new_esEs18(Integer(x0), Integer(x1))
new_lt20(x0, x1, ty_Bool)
new_ltEs7(Right(x0), Right(x1), x2, ty_Bool)
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, app(ty_Ratio, x2))
new_ltEs12(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs22(x0, x1, app(ty_[], x2))
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_lt12(x0, x1, x2)
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs17(Char(x0), Char(x1))
new_esEs19(x0, x1, ty_Double)
new_lt6(x0, x1)
new_esEs26(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_Int)
new_lt4(x0, x1, app(ty_Maybe, x2))
new_compare6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(ty_[], x2))
new_lt19(x0, x1, ty_Ordering)
new_esEs23(x0, x1, ty_Int)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_lt4(x0, x1, app(app(ty_@2, x2), x3))
new_lt19(x0, x1, ty_Char)
new_esEs21(x0, x1, ty_Bool)
new_ltEs11(x0, x1, x2)
new_esEs26(x0, x1, ty_Ordering)
new_esEs23(x0, x1, ty_Char)
new_primCmpNat0(Zero, Zero)
new_lt7(x0, x1, x2, x3)
new_lt4(x0, x1, ty_Char)
new_esEs5(Right(x0), Right(x1), x2, ty_@0)
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt14(x0, x1, x2, x3, x4)
new_esEs5(Right(x0), Right(x1), x2, ty_Integer)
new_esEs10(False, False)
new_esEs19(x0, x1, ty_Char)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_primPlusNat1(Zero, Succ(x0))
new_lt20(x0, x1, ty_Int)
new_ltEs13(LT, LT)
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_lt19(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs15(@0, @0)
new_esEs22(x0, x1, ty_Integer)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs12(Just(x0), Just(x1), ty_Char)
new_esEs6(Just(x0), Just(x1), ty_Double)
new_compare25(Nothing, Nothing, False, x0)
new_esEs21(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, ty_Bool)
new_primCmpNat0(Succ(x0), Zero)
new_esEs7(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_compare112(x0, x1, True, x2)
new_compare25(Just(x0), Just(x1), False, x2)
new_esEs11(:(x0, x1), :(x2, x3), x4)
new_esEs6(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_lt19(x0, x1, ty_Double)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(GT, GT)
new_ltEs20(x0, x1, ty_Double)
new_esEs19(x0, x1, app(ty_[], x2))
new_esEs5(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs16(Float(x0, x1), Float(x2, x3))
new_esEs5(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs7(Left(x0), Left(x1), ty_Double, x2)
new_esEs24(x0, x1, ty_@0)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs5(Left(x0), Right(x1), x2, x3)
new_esEs5(Right(x0), Left(x1), x2, x3)
new_lt20(x0, x1, ty_@0)
new_ltEs7(Left(x0), Left(x1), ty_Float, x2)
new_compare14(x0, x1)
new_not(True)
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_lt19(x0, x1, ty_Float)
new_esEs25(x0, x1, app(ty_[], x2))
new_esEs23(x0, x1, app(ty_[], x2))
new_lt9(x0, x1, x2)
new_compare23(x0, x1, False)
new_ltEs5(x0, x1, ty_Ordering)
new_lt4(x0, x1, ty_Ordering)
new_esEs24(x0, x1, ty_Ordering)
new_esEs5(Right(x0), Right(x1), x2, ty_Bool)
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_lt4(x0, x1, ty_@0)
new_esEs5(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_primCompAux00(x0, GT)
new_esEs23(x0, x1, ty_Integer)
new_lt15(x0, x1)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, ty_Integer)
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs20(x0, x1, ty_Double)
new_esEs25(x0, x1, ty_@0)
new_compare111(x0, x1, True)
new_esEs5(Left(x0), Left(x1), ty_Double, x2)
new_compare6(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Char)
new_esEs11([], [], x0)
new_esEs28(x0, x1, ty_Int)
new_ltEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs5(Left(x0), Left(x1), ty_Integer, x2)
new_ltEs17(x0, x1)
new_compare24(x0, x1, False, x2, x3)
new_compare0([], :(x0, x1), x2)
new_ltEs12(Just(x0), Just(x1), ty_Integer)
new_esEs14(EQ, LT)
new_esEs14(LT, EQ)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_compare6(x0, x1, ty_Int)
new_lt20(x0, x1, ty_Ordering)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_compare23(x0, x1, True)
new_esEs5(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs14(GT, GT)
new_compare0(:(x0, x1), [], x2)
new_ltEs16(x0, x1)
new_esEs19(x0, x1, ty_@0)
new_esEs6(Just(x0), Just(x1), ty_Int)
new_ltEs5(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, app(ty_[], x2))
new_compare9(x0, x1, x2, x3)
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_esEs19(x0, x1, ty_Float)
new_lt4(x0, x1, ty_Float)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_compare11(Double(x0, x1), Double(x2, x3))
new_esEs20(x0, x1, ty_Char)
new_esEs26(x0, x1, ty_Char)
new_esEs25(x0, x1, ty_Double)
new_compare25(x0, x1, True, x2)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs14(EQ, EQ)
new_compare6(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs12(Just(x0), Just(x1), ty_Ordering)
new_esEs20(x0, x1, ty_Ordering)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqNat0(Succ(x0), Succ(x1))
new_compare26(x0, x1, False, x2, x3, x4)
new_lt4(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_lt19(x0, x1, ty_Int)
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_esEs5(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs8(x0, x1, ty_Ordering)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_lt16(x0, x1)
new_esEs21(x0, x1, ty_Ordering)
new_esEs5(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs5(Left(x0), Left(x1), ty_Char, x2)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_ltEs5(x0, x1, ty_@0)
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat0(Zero, x0)
new_lt20(x0, x1, ty_Float)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs6(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_esEs6(Nothing, Nothing, x0)
new_compare115(x0, x1, False, x2, x3, x4)
new_ltEs20(x0, x1, ty_Float)
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), h, app(ty_[], be)) → new_ltEs1(vyw28001, vyw29001, be)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), app(ty_Maybe, da), cd) → new_compare21(vyw28000, vyw29000, new_esEs6(vyw28000, vyw29000, da), da)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 4
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, baf, app(ty_[], bbc)) → new_ltEs1(vyw28002, vyw29002, bbc)
The graph contains the following edges 1 > 1, 2 > 2, 5 > 3
- new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), h, app(app(ty_Either, bc), bd)) → new_ltEs0(vyw28001, vyw29001, bc, bd)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, baf, app(app(ty_Either, bba), bbb)) → new_ltEs0(vyw28002, vyw29002, bba, bbb)
The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4
- new_lt0(vyw28000, vyw29000, ce, cf) → new_compare20(vyw28000, vyw29000, new_esEs5(vyw28000, vyw29000, ce, cf), ce, cf)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 4, 4 >= 5
- new_lt2(vyw28000, vyw29000, da) → new_compare21(vyw28000, vyw29000, new_esEs6(vyw28000, vyw29000, da), da)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 4
- new_ltEs2(Just(vyw28000), Just(vyw29000), app(ty_[], hh)) → new_ltEs1(vyw28000, vyw29000, hh)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), h, app(app(ty_@2, ba), bb)) → new_ltEs(vyw28001, vyw29001, ba, bb)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, baf, app(app(ty_@2, bag), bah)) → new_ltEs(vyw28002, vyw29002, bag, bah)
The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4
- new_ltEs2(Just(vyw28000), Just(vyw29000), app(app(ty_Either, hf), hg)) → new_ltEs0(vyw28000, vyw29000, hf, hg)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_ltEs2(Just(vyw28000), Just(vyw29000), app(app(ty_@2, hd), he)) → new_ltEs(vyw28000, vyw29000, hd, he)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_lt(vyw28000, vyw29000, cb, cc) → new_compare2(vyw28000, vyw29000, new_esEs4(vyw28000, vyw29000, cb, cc), cb, cc)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 4, 4 >= 5
- new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), h, app(app(app(ty_@3, bg), bh), ca)) → new_ltEs3(vyw28001, vyw29001, bg, bh, ca)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, baf, app(app(app(ty_@3, bbe), bbf), bbg)) → new_ltEs3(vyw28002, vyw29002, bbe, bbf, bbg)
The graph contains the following edges 1 > 1, 2 > 2, 5 > 3, 5 > 4, 5 > 5
- new_ltEs2(Just(vyw28000), Just(vyw29000), app(app(app(ty_@3, bab), bac), bad)) → new_ltEs3(vyw28000, vyw29000, bab, bac, bad)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5
- new_ltEs2(Just(vyw28000), Just(vyw29000), app(ty_Maybe, baa)) → new_ltEs2(vyw28000, vyw29000, baa)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, app(ty_Maybe, da)), cd)) → new_compare21(vyw28000, vyw29000, new_esEs6(vyw28000, vyw29000, da), da)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 4
- new_compare4(vyw28000, vyw29000, da) → new_compare21(vyw28000, vyw29000, new_esEs6(vyw28000, vyw29000, da), da)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 4
- new_compare20(vyw28000, vyw29000, False, ce, cf) → new_ltEs0(vyw28000, vyw29000, ce, cf)
The graph contains the following edges 1 >= 1, 2 >= 2, 4 >= 3, 5 >= 4
- new_compare2(vyw28000, vyw29000, False, cb, cc) → new_ltEs(vyw28000, vyw29000, cb, cc)
The graph contains the following edges 1 >= 1, 2 >= 2, 4 >= 3, 5 >= 4
- new_compare22(vyw28000, vyw29000, False, db, dc, dd) → new_ltEs3(vyw28000, vyw29000, db, dc, dd)
The graph contains the following edges 1 >= 1, 2 >= 2, 4 >= 3, 5 >= 4, 6 >= 5
- new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), app(app(app(ty_@3, db), dc), dd), cd) → new_compare22(vyw28000, vyw29000, new_esEs7(vyw28000, vyw29000, db, dc, dd), db, dc, dd)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 4, 3 > 5, 3 > 6
- new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, app(app(app(ty_@3, db), dc), dd)), cd)) → new_compare22(vyw28000, vyw29000, new_esEs7(vyw28000, vyw29000, db, dc, dd), db, dc, dd)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 4, 4 > 5, 4 > 6
- new_lt3(vyw28000, vyw29000, db, dc, dd) → new_compare22(vyw28000, vyw29000, new_esEs7(vyw28000, vyw29000, db, dc, dd), db, dc, dd)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 4, 4 >= 5, 5 >= 6
- new_compare5(vyw28000, vyw29000, db, dc, dd) → new_compare22(vyw28000, vyw29000, new_esEs7(vyw28000, vyw29000, db, dc, dd), db, dc, dd)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 4, 4 >= 5, 5 >= 6
- new_compare(:(vyw28000, vyw28001), :(vyw29000, vyw29001), gb) → new_primCompAux(vyw28000, vyw29000, new_compare0(vyw28001, vyw29001, gb), gb)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 4
- new_compare(:(vyw28000, vyw28001), :(vyw29000, vyw29001), gb) → new_compare(vyw28001, vyw29001, gb)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_compare21(Just(:(vyw28000, vyw28001)), Just(:(vyw29000, vyw29001)), False, app(ty_[], gb)) → new_primCompAux(vyw28000, vyw29000, new_compare0(vyw28001, vyw29001, gb), gb)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 4
- new_ltEs1(:(vyw28000, vyw28001), :(vyw29000, vyw29001), gb) → new_primCompAux(vyw28000, vyw29000, new_compare0(vyw28001, vyw29001, gb), gb)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 4
- new_ltEs1(:(vyw28000, vyw28001), :(vyw29000, vyw29001), gb) → new_compare(vyw28001, vyw29001, gb)
The graph contains the following edges 1 > 1, 2 > 2, 3 >= 3
- new_lt1(vyw28000, vyw29000, cg) → new_compare(vyw28000, vyw29000, cg)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3
- new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), h, app(ty_Maybe, bf)) → new_ltEs2(vyw28001, vyw29001, bf)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, baf, app(ty_Maybe, bbd)) → new_ltEs2(vyw28002, vyw29002, bbd)
The graph contains the following edges 1 > 1, 2 > 2, 5 > 3
- new_compare3(vyw28000, vyw29000, ce, cf) → new_compare20(vyw28000, vyw29000, new_esEs5(vyw28000, vyw29000, ce, cf), ce, cf)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 4, 4 >= 5
- new_compare1(vyw28000, vyw29000, cb, cc) → new_compare2(vyw28000, vyw29000, new_esEs4(vyw28000, vyw29000, cb, cc), cb, cc)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 4, 4 >= 5
- new_primCompAux(vyw28000, vyw29000, vyw99, app(ty_Maybe, gh)) → new_compare4(vyw28000, vyw29000, gh)
The graph contains the following edges 1 >= 1, 2 >= 2, 4 > 3
- new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), app(app(ty_@2, cb), cc), cd) → new_compare2(vyw28000, vyw29000, new_esEs4(vyw28000, vyw29000, cb, cc), cb, cc)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 4, 3 > 5
- new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, app(app(ty_@2, cb), cc)), cd)) → new_compare2(vyw28000, vyw29000, new_esEs4(vyw28000, vyw29000, cb, cc), cb, cc)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 4, 4 > 5
- new_primCompAux(vyw28000, vyw29000, vyw99, app(app(app(ty_@3, ha), hb), hc)) → new_compare5(vyw28000, vyw29000, ha, hb, hc)
The graph contains the following edges 1 >= 1, 2 >= 2, 4 > 3, 4 > 4, 4 > 5
- new_primCompAux(vyw28000, vyw29000, vyw99, app(app(ty_Either, ge), gf)) → new_compare3(vyw28000, vyw29000, ge, gf)
The graph contains the following edges 1 >= 1, 2 >= 2, 4 > 3, 4 > 4
- new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), app(app(ty_Either, ce), cf), cd) → new_compare20(vyw28000, vyw29000, new_esEs5(vyw28000, vyw29000, ce, cf), ce, cf)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 4, 3 > 5
- new_ltEs(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), app(ty_[], cg), cd) → new_compare(vyw28000, vyw29000, cg)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, app(app(ty_Either, ce), cf)), cd)) → new_compare20(vyw28000, vyw29000, new_esEs5(vyw28000, vyw29000, ce, cf), ce, cf)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 4, 4 > 5
- new_primCompAux(vyw28000, vyw29000, vyw99, app(ty_[], gg)) → new_compare(vyw28000, vyw29000, gg)
The graph contains the following edges 1 >= 1, 2 >= 2, 4 > 3
- new_primCompAux(vyw28000, vyw29000, vyw99, app(app(ty_@2, gc), gd)) → new_compare1(vyw28000, vyw29000, gc, gd)
The graph contains the following edges 1 >= 1, 2 >= 2, 4 > 3, 4 > 4
- new_ltEs0(Left(vyw28000), Left(vyw29000), app(ty_[], eb), dg) → new_ltEs1(vyw28000, vyw29000, eb)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_ltEs0(Right(vyw28000), Right(vyw29000), eg, app(ty_[], fd)) → new_ltEs1(vyw28000, vyw29000, fd)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, h), app(ty_[], be))) → new_ltEs1(vyw28001, vyw29001, be)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), baf), app(ty_[], bbc))) → new_ltEs1(vyw28002, vyw29002, bbc)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(Right(vyw28000)), Just(Right(vyw29000)), False, app(app(ty_Either, eg), app(ty_[], fd))) → new_ltEs1(vyw28000, vyw29000, fd)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(Just(vyw28000)), Just(Just(vyw29000)), False, app(ty_Maybe, app(ty_[], hh))) → new_ltEs1(vyw28000, vyw29000, hh)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(Left(vyw28000)), Just(Left(vyw29000)), False, app(app(ty_Either, app(ty_[], eb)), dg)) → new_ltEs1(vyw28000, vyw29000, eb)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_ltEs0(Right(vyw28000), Right(vyw29000), eg, app(app(ty_Either, fb), fc)) → new_ltEs0(vyw28000, vyw29000, fb, fc)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_ltEs0(Left(vyw28000), Left(vyw29000), app(app(ty_Either, dh), ea), dg) → new_ltEs0(vyw28000, vyw29000, dh, ea)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_ltEs0(Right(vyw28000), Right(vyw29000), eg, app(app(ty_@2, eh), fa)) → new_ltEs(vyw28000, vyw29000, eh, fa)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_ltEs0(Left(vyw28000), Left(vyw29000), app(app(ty_@2, de), df), dg) → new_ltEs(vyw28000, vyw29000, de, df)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_ltEs0(Left(vyw28000), Left(vyw29000), app(app(app(ty_@3, ed), ee), ef), dg) → new_ltEs3(vyw28000, vyw29000, ed, ee, ef)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5
- new_ltEs0(Right(vyw28000), Right(vyw29000), eg, app(app(app(ty_@3, fg), fh), ga)) → new_ltEs3(vyw28000, vyw29000, fg, fh, ga)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_ltEs0(Right(vyw28000), Right(vyw29000), eg, app(ty_Maybe, ff)) → new_ltEs2(vyw28000, vyw29000, ff)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_ltEs0(Left(vyw28000), Left(vyw29000), app(ty_Maybe, ec), dg) → new_ltEs2(vyw28000, vyw29000, ec)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), app(app(ty_Either, bdd), bde), baf, bcb) → new_lt0(vyw28000, vyw29000, bdd, bde)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, app(app(ty_Either, bcc), bcd), bcb) → new_lt0(vyw28001, vyw29001, bcc, bcd)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), app(ty_Maybe, bdg), baf, bcb) → new_lt2(vyw28000, vyw29000, bdg)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, app(ty_Maybe, bcf), bcb) → new_lt2(vyw28001, vyw29001, bcf)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), app(app(ty_@2, bdb), bdc), baf, bcb) → new_lt(vyw28000, vyw29000, bdb, bdc)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, app(app(ty_@2, bbh), bca), bcb) → new_lt(vyw28001, vyw29001, bbh, bca)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, app(app(app(ty_@3, bcg), bch), bda), bcb) → new_lt3(vyw28001, vyw29001, bcg, bch, bda)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), app(app(app(ty_@3, bdh), bea), beb), baf, bcb) → new_lt3(vyw28000, vyw29000, bdh, bea, beb)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3, 3 > 4, 3 > 5
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), app(ty_[], bdf), baf, bcb) → new_lt1(vyw28000, vyw29000, bdf)
The graph contains the following edges 1 > 1, 2 > 2, 3 > 3
- new_ltEs3(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bae, app(ty_[], bce), bcb) → new_lt1(vyw28001, vyw29001, bce)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(Just(vyw28000)), Just(Just(vyw29000)), False, app(ty_Maybe, app(app(ty_Either, hf), hg))) → new_ltEs0(vyw28000, vyw29000, hf, hg)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(Right(vyw28000)), Just(Right(vyw29000)), False, app(app(ty_Either, eg), app(app(ty_Either, fb), fc))) → new_ltEs0(vyw28000, vyw29000, fb, fc)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(Left(vyw28000)), Just(Left(vyw29000)), False, app(app(ty_Either, app(app(ty_Either, dh), ea)), dg)) → new_ltEs0(vyw28000, vyw29000, dh, ea)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), baf), app(app(ty_Either, bba), bbb))) → new_ltEs0(vyw28002, vyw29002, bba, bbb)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, h), app(app(ty_Either, bc), bd))) → new_ltEs0(vyw28001, vyw29001, bc, bd)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), baf), app(app(ty_@2, bag), bah))) → new_ltEs(vyw28002, vyw29002, bag, bah)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(Just(vyw28000)), Just(Just(vyw29000)), False, app(ty_Maybe, app(app(ty_@2, hd), he))) → new_ltEs(vyw28000, vyw29000, hd, he)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(Left(vyw28000)), Just(Left(vyw29000)), False, app(app(ty_Either, app(app(ty_@2, de), df)), dg)) → new_ltEs(vyw28000, vyw29000, de, df)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(Right(vyw28000)), Just(Right(vyw29000)), False, app(app(ty_Either, eg), app(app(ty_@2, eh), fa))) → new_ltEs(vyw28000, vyw29000, eh, fa)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, h), app(app(ty_@2, ba), bb))) → new_ltEs(vyw28001, vyw29001, ba, bb)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), baf), app(app(app(ty_@3, bbe), bbf), bbg))) → new_ltEs3(vyw28002, vyw29002, bbe, bbf, bbg)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_compare21(Just(Right(vyw28000)), Just(Right(vyw29000)), False, app(app(ty_Either, eg), app(app(app(ty_@3, fg), fh), ga))) → new_ltEs3(vyw28000, vyw29000, fg, fh, ga)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_compare21(Just(Left(vyw28000)), Just(Left(vyw29000)), False, app(app(ty_Either, app(app(app(ty_@3, ed), ee), ef)), dg)) → new_ltEs3(vyw28000, vyw29000, ed, ee, ef)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, h), app(app(app(ty_@3, bg), bh), ca))) → new_ltEs3(vyw28001, vyw29001, bg, bh, ca)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_compare21(Just(Just(vyw28000)), Just(Just(vyw29000)), False, app(ty_Maybe, app(app(app(ty_@3, bab), bac), bad))) → new_ltEs3(vyw28000, vyw29000, bab, bac, bad)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), app(app(ty_Either, bcc), bcd)), bcb)) → new_lt0(vyw28001, vyw29001, bcc, bcd)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, app(app(ty_Either, bdd), bde)), baf), bcb)) → new_lt0(vyw28000, vyw29000, bdd, bde)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), app(ty_Maybe, bcf)), bcb)) → new_lt2(vyw28001, vyw29001, bcf)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, app(ty_Maybe, bdg)), baf), bcb)) → new_lt2(vyw28000, vyw29000, bdg)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(Right(vyw28000)), Just(Right(vyw29000)), False, app(app(ty_Either, eg), app(ty_Maybe, ff))) → new_ltEs2(vyw28000, vyw29000, ff)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(Just(vyw28000)), Just(Just(vyw29000)), False, app(ty_Maybe, app(ty_Maybe, baa))) → new_ltEs2(vyw28000, vyw29000, baa)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, h), app(ty_Maybe, bf))) → new_ltEs2(vyw28001, vyw29001, bf)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(Left(vyw28000)), Just(Left(vyw29000)), False, app(app(ty_Either, app(ty_Maybe, ec)), dg)) → new_ltEs2(vyw28000, vyw29000, ec)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), baf), app(ty_Maybe, bbd))) → new_ltEs2(vyw28002, vyw29002, bbd)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), app(app(ty_@2, bbh), bca)), bcb)) → new_lt(vyw28001, vyw29001, bbh, bca)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, app(app(ty_@2, bdb), bdc)), baf), bcb)) → new_lt(vyw28000, vyw29000, bdb, bdc)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), app(app(app(ty_@3, bcg), bch), bda)), bcb)) → new_lt3(vyw28001, vyw29001, bcg, bch, bda)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, app(app(app(ty_@3, bdh), bea), beb)), baf), bcb)) → new_lt3(vyw28000, vyw29000, bdh, bea, beb)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3, 4 > 4, 4 > 5
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, app(ty_[], bdf)), baf), bcb)) → new_lt1(vyw28000, vyw29000, bdf)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(@3(vyw28000, vyw28001, vyw28002)), Just(@3(vyw29000, vyw29001, vyw29002)), False, app(app(app(ty_@3, bae), app(ty_[], bce)), bcb)) → new_lt1(vyw28001, vyw29001, bce)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(@2(vyw28000, vyw28001)), Just(@2(vyw29000, vyw29001)), False, app(app(ty_@2, app(ty_[], cg)), cd)) → new_compare(vyw28000, vyw29000, cg)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
- new_compare21(Just(:(vyw28000, vyw28001)), Just(:(vyw29000, vyw29001)), False, app(ty_[], gb)) → new_compare(vyw28001, vyw29001, gb)
The graph contains the following edges 1 > 1, 2 > 2, 4 > 3
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ DependencyGraphProof
Q DP problem:
The TRS P consists of the following rules:
new_elemFM00(Branch(Just(vyw400), vyw41, vyw42, vyw43, vyw44), Just(vyw30), h, ba) → new_elemFM03(vyw400, vyw41, vyw42, vyw43, vyw44, vyw30, new_esEs14(new_compare25(Just(vyw30), Just(vyw400), new_esEs29(vyw30, vyw400, ba), ba), LT), h, ba)
new_elemFM02(vyw41, vyw42, vyw43, vyw44, vyw30, True, h, ba) → new_elemFM00(vyw43, Just(vyw30), h, ba)
new_elemFM00(Branch(Just(vyw400), vyw41, vyw42, vyw43, vyw44), Nothing, h, ba) → new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Just(vyw400), False, ba), LT), h, ba)
new_elemFM02(vyw41, vyw42, vyw43, vyw44, vyw30, False, h, ba) → new_elemFM05(vyw41, vyw42, vyw43, vyw44, vyw30, new_esEs14(new_compare25(Just(vyw30), Nothing, False, ba), GT), h, ba)
new_elemFM00(Branch(Nothing, vyw41, vyw42, vyw43, vyw44), Nothing, h, ba) → new_elemFM0(vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Nothing, True, ba), GT), h, ba)
new_elemFM0(vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw44, Nothing, h, ba)
new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw43, Nothing, h, ba)
new_elemFM06(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, True, bb, bc) → new_elemFM00(vyw17, Just(vyw18), bb, bc)
new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, False, h, ba) → new_elemFM04(vyw400, vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Just(vyw400), False, ba), GT), h, ba)
new_elemFM05(vyw41, vyw42, vyw43, vyw44, vyw30, True, h, ba) → new_elemFM00(vyw44, Just(vyw30), h, ba)
new_elemFM00(Branch(Nothing, vyw41, vyw42, vyw43, vyw44), Just(vyw30), h, ba) → new_elemFM02(vyw41, vyw42, vyw43, vyw44, vyw30, new_esEs14(new_compare25(Just(vyw30), Nothing, False, ba), LT), h, ba)
new_elemFM04(vyw400, vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw44, Nothing, h, ba)
new_elemFM03(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, True, bb, bc) → new_elemFM00(vyw16, Just(vyw18), bb, bc)
new_elemFM03(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, False, bb, bc) → new_elemFM06(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, new_esEs14(new_compare25(Just(vyw18), Just(vyw13), new_esEs30(vyw18, vyw13, bc), bc), GT), bb, bc)
The TRS R consists of the following rules:
new_esEs30(vyw18, vyw13, app(ty_Maybe, ccg)) → new_esEs6(vyw18, vyw13, ccg)
new_esEs26(vyw301, vyw4001, ty_@0) → new_esEs15(vyw301, vyw4001)
new_compare112(vyw84, vyw85, True, bef) → LT
new_esEs24(vyw28001, vyw29001, app(app(ty_Either, cad), cae)) → new_esEs5(vyw28001, vyw29001, cad, cae)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Char) → new_esEs17(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Int) → new_ltEs6(vyw28000, vyw29000)
new_ltEs19(vyw2800, vyw2900, app(ty_Ratio, beh)) → new_ltEs11(vyw2800, vyw2900, beh)
new_compare6(vyw28000, vyw29000, app(app(app(ty_@3, bbe), bbf), bbg)) → new_compare15(vyw28000, vyw29000, bbe, bbf, bbg)
new_ltEs8(False, True) → True
new_esEs5(Left(vyw300), Left(vyw4000), ty_Ordering, cge) → new_esEs14(vyw300, vyw4000)
new_esEs17(Char(vyw300), Char(vyw4000)) → new_primEqNat0(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, app(ty_[], bbb)) → new_compare0(vyw28000, vyw29000, bbb)
new_ltEs19(vyw2800, vyw2900, app(ty_[], bae)) → new_ltEs9(vyw2800, vyw2900, bae)
new_esEs24(vyw28001, vyw29001, ty_Char) → new_esEs17(vyw28001, vyw29001)
new_compare110(vyw28000, vyw29000, True, bf, bg) → LT
new_lt6(vyw28000, vyw29000) → new_esEs14(new_compare8(vyw28000, vyw29000), LT)
new_lt19(vyw28001, vyw29001, ty_Integer) → new_lt18(vyw28001, vyw29001)
new_esEs23(vyw28000, vyw29000, app(app(ty_Either, bhb), bhc)) → new_esEs5(vyw28000, vyw29000, bhb, bhc)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Double, cge) → new_esEs12(vyw300, vyw4000)
new_esEs23(vyw28000, vyw29000, app(app(ty_@2, bgh), bha)) → new_esEs4(vyw28000, vyw29000, bgh, bha)
new_esEs23(vyw28000, vyw29000, ty_Integer) → new_esEs18(vyw28000, vyw29000)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(ty_[], bdh)) → new_ltEs9(vyw28000, vyw29000, bdh)
new_esEs29(vyw30, vyw400, ty_Int) → new_esEs9(vyw30, vyw400)
new_esEs20(vyw301, vyw4001, ty_Int) → new_esEs9(vyw301, vyw4001)
new_lt4(vyw28000, vyw29000, ty_Double) → new_lt10(vyw28000, vyw29000)
new_esEs20(vyw301, vyw4001, ty_Double) → new_esEs12(vyw301, vyw4001)
new_compare27(vyw28000, vyw29000, False, bh, ca) → new_compare114(vyw28000, vyw29000, new_ltEs7(vyw28000, vyw29000, bh, ca), bh, ca)
new_esEs25(vyw300, vyw4000, ty_Char) → new_esEs17(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(ty_[], ced)) → new_ltEs9(vyw28000, vyw29000, ced)
new_esEs23(vyw28000, vyw29000, ty_Float) → new_esEs16(vyw28000, vyw29000)
new_ltEs12(Nothing, Nothing, bfa) → True
new_esEs16(Float(vyw300, vyw301), Float(vyw4000, vyw4001)) → new_esEs9(new_sr(vyw300, vyw4000), new_sr(vyw301, vyw4001))
new_ltEs7(Left(vyw28000), Right(vyw29000), bdc, bcb) → True
new_primMulNat0(Zero, Zero) → Zero
new_esEs25(vyw300, vyw4000, ty_Double) → new_esEs12(vyw300, vyw4000)
new_esEs6(Just(vyw300), Just(vyw4000), app(ty_Ratio, cfc)) → new_esEs13(vyw300, vyw4000, cfc)
new_ltEs20(vyw28002, vyw29002, ty_@0) → new_ltEs15(vyw28002, vyw29002)
new_esEs29(vyw30, vyw400, ty_Float) → new_esEs16(vyw30, vyw400)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Float) → new_esEs16(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Float) → new_ltEs16(vyw28000, vyw29000)
new_esEs23(vyw28000, vyw29000, app(ty_Ratio, bhe)) → new_esEs13(vyw28000, vyw29000, bhe)
new_esEs25(vyw300, vyw4000, app(app(ty_@2, dbh), dca)) → new_esEs4(vyw300, vyw4000, dbh, dca)
new_lt20(vyw28000, vyw29000, ty_Integer) → new_lt18(vyw28000, vyw29000)
new_compare25(vyw280, vyw290, True, beg) → EQ
new_compare10(vyw28000, vyw29000) → new_compare23(vyw28000, vyw29000, new_esEs10(vyw28000, vyw29000))
new_lt20(vyw28000, vyw29000, app(app(ty_@2, bgh), bha)) → new_lt5(vyw28000, vyw29000, bgh, bha)
new_esEs22(vyw300, vyw4000, ty_Char) → new_esEs17(vyw300, vyw4000)
new_esEs8(vyw28000, vyw29000, ty_Double) → new_esEs12(vyw28000, vyw29000)
new_compare14(vyw28000, vyw29000) → new_compare28(vyw28000, vyw29000, new_esEs14(vyw28000, vyw29000))
new_compare16(@0, @0) → EQ
new_lt18(vyw28000, vyw29000) → new_esEs14(new_compare19(vyw28000, vyw29000), LT)
new_esEs19(vyw300, vyw4000, app(app(app(ty_@3, ff), fg), fh)) → new_esEs7(vyw300, vyw4000, ff, fg, fh)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(app(ty_@2, bdd), bde)) → new_ltEs4(vyw28000, vyw29000, bdd, bde)
new_esEs30(vyw18, vyw13, ty_Int) → new_esEs9(vyw18, vyw13)
new_esEs22(vyw300, vyw4000, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs19(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_ltEs6(vyw2800, vyw2900) → new_not(new_esEs14(new_compare8(vyw2800, vyw2900), GT))
new_esEs20(vyw301, vyw4001, app(ty_Ratio, ga)) → new_esEs13(vyw301, vyw4001, ga)
new_ltEs13(LT, EQ) → True
new_ltEs20(vyw28002, vyw29002, app(ty_[], cbh)) → new_ltEs9(vyw28002, vyw29002, cbh)
new_esEs11([], [], bfe) → True
new_compare0(:(vyw28000, vyw28001), :(vyw29000, vyw29001), bae) → new_primCompAux0(vyw28000, vyw29000, new_compare0(vyw28001, vyw29001, bae), bae)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Double) → new_esEs12(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, ty_Float) → new_compare17(vyw28000, vyw29000)
new_esEs22(vyw300, vyw4000, app(ty_Maybe, bfg)) → new_esEs6(vyw300, vyw4000, bfg)
new_esEs21(vyw302, vyw4002, app(app(app(ty_@3, bab), bac), bad)) → new_esEs7(vyw302, vyw4002, bab, bac, bad)
new_compare12(:%(vyw28000, vyw28001), :%(vyw29000, vyw29001), ty_Integer) → new_compare19(new_sr0(vyw28000, vyw29001), new_sr0(vyw29000, vyw28001))
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_@0) → new_ltEs15(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, app(app(app(ty_@3, ec), ed), ee)) → new_esEs7(vyw30, vyw400, ec, ed, ee)
new_ltEs19(vyw2800, vyw2900, app(ty_Maybe, bfa)) → new_ltEs12(vyw2800, vyw2900, bfa)
new_lt15(vyw28000, vyw29000) → new_esEs14(new_compare16(vyw28000, vyw29000), LT)
new_compare6(vyw28000, vyw29000, ty_@0) → new_compare16(vyw28000, vyw29000)
new_esEs8(vyw28000, vyw29000, app(app(ty_@2, bf), bg)) → new_esEs4(vyw28000, vyw29000, bf, bg)
new_lt9(vyw28000, vyw29000, cb) → new_esEs14(new_compare0(vyw28000, vyw29000, cb), LT)
new_compare6(vyw28000, vyw29000, ty_Integer) → new_compare19(vyw28000, vyw29000)
new_ltEs5(vyw28001, vyw29001, ty_Ordering) → new_ltEs13(vyw28001, vyw29001)
new_esEs19(vyw300, vyw4000, app(app(ty_Either, fc), fd)) → new_esEs5(vyw300, vyw4000, fc, fd)
new_ltEs19(vyw2800, vyw2900, ty_Float) → new_ltEs16(vyw2800, vyw2900)
new_esEs5(Left(vyw300), Left(vyw4000), app(ty_Maybe, cgg), cge) → new_esEs6(vyw300, vyw4000, cgg)
new_pePe(False, vyw98) → vyw98
new_esEs26(vyw301, vyw4001, ty_Bool) → new_esEs10(vyw301, vyw4001)
new_esEs19(vyw300, vyw4000, ty_@0) → new_esEs15(vyw300, vyw4000)
new_lt19(vyw28001, vyw29001, ty_Double) → new_lt10(vyw28001, vyw29001)
new_ltEs19(vyw2800, vyw2900, app(app(ty_@2, bd), be)) → new_ltEs4(vyw2800, vyw2900, bd, be)
new_esEs8(vyw28000, vyw29000, ty_Float) → new_esEs16(vyw28000, vyw29000)
new_compare23(vyw28000, vyw29000, True) → EQ
new_esEs28(vyw301, vyw4001, ty_Integer) → new_esEs18(vyw301, vyw4001)
new_lt19(vyw28001, vyw29001, app(ty_[], caf)) → new_lt9(vyw28001, vyw29001, caf)
new_esEs19(vyw300, vyw4000, app(ty_Maybe, eg)) → new_esEs6(vyw300, vyw4000, eg)
new_esEs22(vyw300, vyw4000, ty_@0) → new_esEs15(vyw300, vyw4000)
new_ltEs5(vyw28001, vyw29001, app(app(ty_@2, da), db)) → new_ltEs4(vyw28001, vyw29001, da, db)
new_esEs22(vyw300, vyw4000, app(app(ty_@2, bfh), bga)) → new_esEs4(vyw300, vyw4000, bfh, bga)
new_ltEs14(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bfb, bfc, bfd) → new_pePe(new_lt20(vyw28000, vyw29000, bfb), new_asAs(new_esEs23(vyw28000, vyw29000, bfb), new_pePe(new_lt19(vyw28001, vyw29001, bfc), new_asAs(new_esEs24(vyw28001, vyw29001, bfc), new_ltEs20(vyw28002, vyw29002, bfd)))))
new_esEs14(EQ, EQ) → True
new_lt11(vyw28000, vyw29000, cc) → new_esEs14(new_compare12(vyw28000, vyw29000, cc), LT)
new_esEs19(vyw300, vyw4000, ty_Float) → new_esEs16(vyw300, vyw4000)
new_ltEs13(EQ, GT) → True
new_ltEs5(vyw28001, vyw29001, app(app(app(ty_@3, dh), ea), eb)) → new_ltEs14(vyw28001, vyw29001, dh, ea, eb)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_esEs29(vyw30, vyw400, app(ty_Ratio, dbc)) → new_esEs13(vyw30, vyw400, dbc)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_@0) → new_esEs15(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(ty_Ratio, cee)) → new_ltEs11(vyw28000, vyw29000, cee)
new_compare111(vyw28000, vyw29000, False) → GT
new_compare111(vyw28000, vyw29000, True) → LT
new_esEs24(vyw28001, vyw29001, app(ty_[], caf)) → new_esEs11(vyw28001, vyw29001, caf)
new_ltEs5(vyw28001, vyw29001, app(ty_[], de)) → new_ltEs9(vyw28001, vyw29001, de)
new_esEs29(vyw30, vyw400, app(app(ty_@2, dbd), dbe)) → new_esEs4(vyw30, vyw400, dbd, dbe)
new_esEs29(vyw30, vyw400, app(ty_[], bfe)) → new_esEs11(vyw30, vyw400, bfe)
new_lt20(vyw28000, vyw29000, app(app(ty_Either, bhb), bhc)) → new_lt7(vyw28000, vyw29000, bhb, bhc)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(app(ty_@2, dac), dad)) → new_esEs4(vyw300, vyw4000, dac, dad)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Char) → new_esEs17(vyw300, vyw4000)
new_ltEs20(vyw28002, vyw29002, app(app(ty_@2, cbd), cbe)) → new_ltEs4(vyw28002, vyw29002, cbd, cbe)
new_esEs23(vyw28000, vyw29000, app(app(app(ty_@3, bhg), bhh), caa)) → new_esEs7(vyw28000, vyw29000, bhg, bhh, caa)
new_primCmpNat0(Zero, Succ(vyw290000)) → LT
new_esEs26(vyw301, vyw4001, ty_Double) → new_esEs12(vyw301, vyw4001)
new_esEs20(vyw301, vyw4001, ty_Ordering) → new_esEs14(vyw301, vyw4001)
new_ltEs20(vyw28002, vyw29002, ty_Bool) → new_ltEs8(vyw28002, vyw29002)
new_lt19(vyw28001, vyw29001, app(app(ty_@2, cab), cac)) → new_lt5(vyw28001, vyw29001, cab, cac)
new_lt20(vyw28000, vyw29000, app(app(app(ty_@3, bhg), bhh), caa)) → new_lt14(vyw28000, vyw29000, bhg, bhh, caa)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(ty_Ratio, bcf), bcb) → new_ltEs11(vyw28000, vyw29000, bcf)
new_esEs25(vyw300, vyw4000, app(app(ty_Either, dcc), dcd)) → new_esEs5(vyw300, vyw4000, dcc, dcd)
new_compare24(vyw28000, vyw29000, False, bf, bg) → new_compare110(vyw28000, vyw29000, new_ltEs4(vyw28000, vyw29000, bf, bg), bf, bg)
new_lt20(vyw28000, vyw29000, ty_@0) → new_lt15(vyw28000, vyw29000)
new_esEs21(vyw302, vyw4002, app(ty_Ratio, hc)) → new_esEs13(vyw302, vyw4002, hc)
new_lt19(vyw28001, vyw29001, ty_@0) → new_lt15(vyw28001, vyw29001)
new_esEs7(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), ec, ed, ee) → new_asAs(new_esEs19(vyw300, vyw4000, ec), new_asAs(new_esEs20(vyw301, vyw4001, ed), new_esEs21(vyw302, vyw4002, ee)))
new_esEs25(vyw300, vyw4000, app(ty_Ratio, dbf)) → new_esEs13(vyw300, vyw4000, dbf)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Double) → new_ltEs10(vyw28000, vyw29000)
new_compare0([], [], bae) → EQ
new_pePe(True, vyw98) → True
new_primEqNat0(Zero, Zero) → True
new_esEs6(Just(vyw300), Just(vyw4000), app(app(app(ty_@3, cgb), cgc), cgd)) → new_esEs7(vyw300, vyw4000, cgb, cgc, cgd)
new_esEs23(vyw28000, vyw29000, ty_Ordering) → new_esEs14(vyw28000, vyw29000)
new_ltEs19(vyw2800, vyw2900, ty_Integer) → new_ltEs18(vyw2800, vyw2900)
new_ltEs5(vyw28001, vyw29001, ty_Bool) → new_ltEs8(vyw28001, vyw29001)
new_esEs29(vyw30, vyw400, app(ty_Maybe, cfb)) → new_esEs6(vyw30, vyw400, cfb)
new_esEs19(vyw300, vyw4000, app(ty_Ratio, ef)) → new_esEs13(vyw300, vyw4000, ef)
new_esEs26(vyw301, vyw4001, ty_Char) → new_esEs17(vyw301, vyw4001)
new_esEs19(vyw300, vyw4000, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs26(vyw301, vyw4001, app(ty_Maybe, dda)) → new_esEs6(vyw301, vyw4001, dda)
new_esEs8(vyw28000, vyw29000, ty_Int) → new_esEs9(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Int, cge) → new_esEs9(vyw300, vyw4000)
new_lt4(vyw28000, vyw29000, ty_Char) → new_lt17(vyw28000, vyw29000)
new_esEs26(vyw301, vyw4001, app(ty_Ratio, dch)) → new_esEs13(vyw301, vyw4001, dch)
new_lt20(vyw28000, vyw29000, app(ty_[], bhd)) → new_lt9(vyw28000, vyw29000, bhd)
new_esEs25(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_compare110(vyw28000, vyw29000, False, bf, bg) → GT
new_ltEs15(vyw2800, vyw2900) → new_not(new_esEs14(new_compare16(vyw2800, vyw2900), GT))
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Double) → new_ltEs10(vyw28000, vyw29000)
new_ltEs20(vyw28002, vyw29002, app(app(app(ty_@3, ccc), ccd), cce)) → new_ltEs14(vyw28002, vyw29002, ccc, ccd, cce)
new_sr(vyw301, vyw4001) → new_primMulInt(vyw301, vyw4001)
new_esEs30(vyw18, vyw13, app(ty_[], cdb)) → new_esEs11(vyw18, vyw13, cdb)
new_esEs11(:(vyw300, vyw301), :(vyw4000, vyw4001), bfe) → new_asAs(new_esEs22(vyw300, vyw4000, bfe), new_esEs11(vyw301, vyw4001, bfe))
new_esEs14(LT, GT) → False
new_esEs14(GT, LT) → False
new_ltEs20(vyw28002, vyw29002, app(ty_Ratio, cca)) → new_ltEs11(vyw28002, vyw29002, cca)
new_primPlusNat0(Succ(vyw1000), vyw400100) → Succ(Succ(new_primPlusNat1(vyw1000, vyw400100)))
new_lt19(vyw28001, vyw29001, app(ty_Ratio, cag)) → new_lt11(vyw28001, vyw29001, cag)
new_esEs25(vyw300, vyw4000, ty_Float) → new_esEs16(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, app(app(app(ty_@3, gh), ha), hb)) → new_esEs7(vyw301, vyw4001, gh, ha, hb)
new_ltEs18(vyw2800, vyw2900) → new_not(new_esEs14(new_compare19(vyw2800, vyw2900), GT))
new_ltEs19(vyw2800, vyw2900, ty_Double) → new_ltEs10(vyw2800, vyw2900)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(ty_[], dae)) → new_esEs11(vyw300, vyw4000, dae)
new_lt20(vyw28000, vyw29000, ty_Char) → new_lt17(vyw28000, vyw29000)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_@0, bcb) → new_ltEs15(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), app(ty_Ratio, cgf), cge) → new_esEs13(vyw300, vyw4000, cgf)
new_ltEs20(vyw28002, vyw29002, ty_Float) → new_ltEs16(vyw28002, vyw29002)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_@0) → new_ltEs15(vyw28000, vyw29000)
new_lt4(vyw28000, vyw29000, app(app(ty_Either, bh), ca)) → new_lt7(vyw28000, vyw29000, bh, ca)
new_lt14(vyw28000, vyw29000, ce, cf, cg) → new_esEs14(new_compare15(vyw28000, vyw29000, ce, cf, cg), LT)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Int, bcb) → new_ltEs6(vyw28000, vyw29000)
new_lt19(vyw28001, vyw29001, ty_Bool) → new_lt8(vyw28001, vyw29001)
new_primEqInt(Neg(Succ(vyw3000)), Neg(Succ(vyw40000))) → new_primEqNat0(vyw3000, vyw40000)
new_lt20(vyw28000, vyw29000, app(ty_Ratio, bhe)) → new_lt11(vyw28000, vyw29000, bhe)
new_compare6(vyw28000, vyw29000, ty_Bool) → new_compare10(vyw28000, vyw29000)
new_compare28(vyw28000, vyw29000, False) → new_compare113(vyw28000, vyw29000, new_ltEs13(vyw28000, vyw29000))
new_ltEs5(vyw28001, vyw29001, ty_Char) → new_ltEs17(vyw28001, vyw29001)
new_primCompAux0(vyw28000, vyw29000, vyw99, bae) → new_primCompAux00(vyw99, new_compare6(vyw28000, vyw29000, bae))
new_compare6(vyw28000, vyw29000, ty_Int) → new_compare8(vyw28000, vyw29000)
new_esEs12(Double(vyw300, vyw301), Double(vyw4000, vyw4001)) → new_esEs9(new_sr(vyw300, vyw4000), new_sr(vyw301, vyw4001))
new_esEs19(vyw300, vyw4000, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_primPlusNat1(Succ(vyw10000), Zero) → Succ(vyw10000)
new_primPlusNat1(Zero, Succ(vyw4001000)) → Succ(vyw4001000)
new_lt4(vyw28000, vyw29000, ty_Integer) → new_lt18(vyw28000, vyw29000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Bool) → new_ltEs8(vyw28000, vyw29000)
new_compare25(Just(vyw2800), Nothing, False, beg) → GT
new_compare6(vyw28000, vyw29000, app(ty_Ratio, bbc)) → new_compare12(vyw28000, vyw29000, bbc)
new_esEs8(vyw28000, vyw29000, ty_@0) → new_esEs15(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, app(app(ty_Either, chh), cge)) → new_esEs5(vyw30, vyw400, chh, cge)
new_compare25(Nothing, Nothing, False, beg) → LT
new_ltEs8(True, True) → True
new_esEs26(vyw301, vyw4001, app(app(app(ty_@3, ddg), ddh), dea)) → new_esEs7(vyw301, vyw4001, ddg, ddh, dea)
new_esEs21(vyw302, vyw4002, ty_Ordering) → new_esEs14(vyw302, vyw4002)
new_esEs21(vyw302, vyw4002, ty_@0) → new_esEs15(vyw302, vyw4002)
new_ltEs13(LT, GT) → True
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Bool) → new_ltEs8(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), app(app(app(ty_@3, che), chf), chg), cge) → new_esEs7(vyw300, vyw4000, che, chf, chg)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs24(vyw28001, vyw29001, ty_Bool) → new_esEs10(vyw28001, vyw29001)
new_ltEs7(Right(vyw28000), Left(vyw29000), bdc, bcb) → False
new_compare6(vyw28000, vyw29000, ty_Ordering) → new_compare14(vyw28000, vyw29000)
new_esEs30(vyw18, vyw13, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs7(vyw18, vyw13, cde, cdf, cdg)
new_esEs8(vyw28000, vyw29000, app(ty_Ratio, cc)) → new_esEs13(vyw28000, vyw29000, cc)
new_compare8(vyw2800, vyw2900) → new_primCmpInt(vyw2800, vyw2900)
new_primEqInt(Neg(Succ(vyw3000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(vyw40000))) → False
new_lt12(vyw28000, vyw29000, cd) → new_esEs14(new_compare13(vyw28000, vyw29000, cd), LT)
new_lt20(vyw28000, vyw29000, ty_Ordering) → new_lt13(vyw28000, vyw29000)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(ty_Ratio, bea)) → new_ltEs11(vyw28000, vyw29000, bea)
new_compare24(vyw28000, vyw29000, True, bf, bg) → EQ
new_lt4(vyw28000, vyw29000, ty_Bool) → new_lt8(vyw28000, vyw29000)
new_esEs10(False, False) → True
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Char) → new_ltEs17(vyw28000, vyw29000)
new_ltEs19(vyw2800, vyw2900, ty_Char) → new_ltEs17(vyw2800, vyw2900)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs21(vyw302, vyw4002, ty_Integer) → new_esEs18(vyw302, vyw4002)
new_lt4(vyw28000, vyw29000, app(ty_Ratio, cc)) → new_lt11(vyw28000, vyw29000, cc)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(app(ty_@2, bbh), bca), bcb) → new_ltEs4(vyw28000, vyw29000, bbh, bca)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs5(Left(vyw300), Left(vyw4000), app(ty_[], chb), cge) → new_esEs11(vyw300, vyw4000, chb)
new_lt19(vyw28001, vyw29001, ty_Int) → new_lt6(vyw28001, vyw29001)
new_primCmpNat0(Succ(vyw280000), Succ(vyw290000)) → new_primCmpNat0(vyw280000, vyw290000)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_esEs30(vyw18, vyw13, ty_@0) → new_esEs15(vyw18, vyw13)
new_esEs6(Nothing, Nothing, cfb) → True
new_esEs29(vyw30, vyw400, ty_Ordering) → new_esEs14(vyw30, vyw400)
new_ltEs13(GT, LT) → False
new_primEqInt(Pos(Succ(vyw3000)), Pos(Succ(vyw40000))) → new_primEqNat0(vyw3000, vyw40000)
new_compare27(vyw28000, vyw29000, True, bh, ca) → EQ
new_esEs21(vyw302, vyw4002, app(ty_Maybe, hd)) → new_esEs6(vyw302, vyw4002, hd)
new_ltEs13(EQ, EQ) → True
new_esEs23(vyw28000, vyw29000, ty_Char) → new_esEs17(vyw28000, vyw29000)
new_lt4(vyw28000, vyw29000, app(ty_Maybe, cd)) → new_lt12(vyw28000, vyw29000, cd)
new_ltEs17(vyw2800, vyw2900) → new_not(new_esEs14(new_compare18(vyw2800, vyw2900), GT))
new_esEs25(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(app(ty_Either, daf), dag)) → new_esEs5(vyw300, vyw4000, daf, dag)
new_esEs8(vyw28000, vyw29000, ty_Integer) → new_esEs18(vyw28000, vyw29000)
new_esEs6(Just(vyw300), Nothing, cfb) → False
new_esEs6(Nothing, Just(vyw4000), cfb) → False
new_primEqNat0(Succ(vyw3000), Succ(vyw40000)) → new_primEqNat0(vyw3000, vyw40000)
new_lt5(vyw28000, vyw29000, bf, bg) → new_esEs14(new_compare7(vyw28000, vyw29000, bf, bg), LT)
new_esEs30(vyw18, vyw13, ty_Integer) → new_esEs18(vyw18, vyw13)
new_primCompAux00(vyw109, LT) → LT
new_esEs26(vyw301, vyw4001, app(ty_[], ddd)) → new_esEs11(vyw301, vyw4001, ddd)
new_primCmpInt(Neg(Succ(vyw280000)), Neg(vyw29000)) → new_primCmpNat0(vyw29000, Succ(vyw280000))
new_ltEs19(vyw2800, vyw2900, app(app(ty_Either, bdc), bcb)) → new_ltEs7(vyw2800, vyw2900, bdc, bcb)
new_compare114(vyw28000, vyw29000, True, bh, ca) → LT
new_esEs26(vyw301, vyw4001, app(app(ty_@2, ddb), ddc)) → new_esEs4(vyw301, vyw4001, ddb, ddc)
new_compare115(vyw28000, vyw29000, True, ce, cf, cg) → LT
new_ltEs7(Left(vyw28000), Left(vyw29000), app(ty_[], bce), bcb) → new_ltEs9(vyw28000, vyw29000, bce)
new_lt19(vyw28001, vyw29001, app(app(ty_Either, cad), cae)) → new_lt7(vyw28001, vyw29001, cad, cae)
new_ltEs19(vyw2800, vyw2900, ty_Bool) → new_ltEs8(vyw2800, vyw2900)
new_primEqInt(Pos(Zero), Pos(Succ(vyw40000))) → False
new_primEqInt(Pos(Succ(vyw3000)), Pos(Zero)) → False
new_ltEs20(vyw28002, vyw29002, app(ty_Maybe, ccb)) → new_ltEs12(vyw28002, vyw29002, ccb)
new_lt4(vyw28000, vyw29000, app(ty_[], cb)) → new_lt9(vyw28000, vyw29000, cb)
new_esEs30(vyw18, vyw13, ty_Float) → new_esEs16(vyw18, vyw13)
new_lt13(vyw28000, vyw29000) → new_esEs14(new_compare14(vyw28000, vyw29000), LT)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(vyw280000), Zero) → GT
new_ltEs12(Just(vyw28000), Just(vyw29000), app(app(ty_@2, cdh), cea)) → new_ltEs4(vyw28000, vyw29000, cdh, cea)
new_compare9(vyw28000, vyw29000, bh, ca) → new_compare27(vyw28000, vyw29000, new_esEs5(vyw28000, vyw29000, bh, ca), bh, ca)
new_esEs24(vyw28001, vyw29001, ty_@0) → new_esEs15(vyw28001, vyw29001)
new_primCmpInt(Neg(Zero), Pos(Succ(vyw290000))) → LT
new_esEs20(vyw301, vyw4001, app(app(ty_Either, gf), gg)) → new_esEs5(vyw301, vyw4001, gf, gg)
new_esEs22(vyw300, vyw4000, app(ty_Ratio, bff)) → new_esEs13(vyw300, vyw4000, bff)
new_sr0(Integer(vyw280000), Integer(vyw290010)) → Integer(new_primMulInt(vyw280000, vyw290010))
new_lt4(vyw28000, vyw29000, app(app(ty_@2, bf), bg)) → new_lt5(vyw28000, vyw29000, bf, bg)
new_primPlusNat1(Succ(vyw10000), Succ(vyw4001000)) → Succ(Succ(new_primPlusNat1(vyw10000, vyw4001000)))
new_ltEs11(vyw2800, vyw2900, beh) → new_not(new_esEs14(new_compare12(vyw2800, vyw2900, beh), GT))
new_primEqInt(Neg(Succ(vyw3000)), Pos(vyw4000)) → False
new_primEqInt(Pos(Succ(vyw3000)), Neg(vyw4000)) → False
new_esEs24(vyw28001, vyw29001, app(ty_Ratio, cag)) → new_esEs13(vyw28001, vyw29001, cag)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(ty_Maybe, cef)) → new_ltEs12(vyw28000, vyw29000, cef)
new_esEs24(vyw28001, vyw29001, app(app(ty_@2, cab), cac)) → new_esEs4(vyw28001, vyw29001, cab, cac)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, app(app(ty_Either, bah), bba)) → new_compare9(vyw28000, vyw29000, bah, bba)
new_esEs8(vyw28000, vyw29000, app(app(ty_Either, bh), ca)) → new_esEs5(vyw28000, vyw29000, bh, ca)
new_ltEs19(vyw2800, vyw2900, ty_@0) → new_ltEs15(vyw2800, vyw2900)
new_ltEs20(vyw28002, vyw29002, ty_Double) → new_ltEs10(vyw28002, vyw29002)
new_esEs11([], :(vyw4000, vyw4001), bfe) → False
new_esEs11(:(vyw300, vyw301), [], bfe) → False
new_ltEs20(vyw28002, vyw29002, ty_Integer) → new_ltEs18(vyw28002, vyw29002)
new_esEs26(vyw301, vyw4001, ty_Int) → new_esEs9(vyw301, vyw4001)
new_esEs8(vyw28000, vyw29000, ty_Char) → new_esEs17(vyw28000, vyw29000)
new_primEqInt(Pos(Zero), Neg(Succ(vyw40000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(vyw40000))) → False
new_esEs4(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dbd, dbe) → new_asAs(new_esEs25(vyw300, vyw4000, dbd), new_esEs26(vyw301, vyw4001, dbe))
new_esEs5(Left(vyw300), Left(vyw4000), app(app(ty_@2, cgh), cha), cge) → new_esEs4(vyw300, vyw4000, cgh, cha)
new_esEs22(vyw300, vyw4000, app(ty_[], bgb)) → new_esEs11(vyw300, vyw4000, bgb)
new_compare23(vyw28000, vyw29000, False) → new_compare111(vyw28000, vyw29000, new_ltEs8(vyw28000, vyw29000))
new_primCmpInt(Pos(Zero), Pos(Succ(vyw290000))) → new_primCmpNat0(Zero, Succ(vyw290000))
new_primCompAux00(vyw109, EQ) → vyw109
new_esEs20(vyw301, vyw4001, ty_Bool) → new_esEs10(vyw301, vyw4001)
new_compare7(vyw28000, vyw29000, bf, bg) → new_compare24(vyw28000, vyw29000, new_esEs4(vyw28000, vyw29000, bf, bg), bf, bg)
new_ltEs13(GT, EQ) → False
new_esEs24(vyw28001, vyw29001, ty_Ordering) → new_esEs14(vyw28001, vyw29001)
new_compare25(Nothing, Just(vyw2900), False, beg) → LT
new_ltEs13(EQ, LT) → False
new_esEs29(vyw30, vyw400, ty_Double) → new_esEs12(vyw30, vyw400)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs25(vyw300, vyw4000, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs26(vyw301, vyw4001, ty_Float) → new_esEs16(vyw301, vyw4001)
new_compare6(vyw28000, vyw29000, ty_Double) → new_compare11(vyw28000, vyw29000)
new_ltEs8(True, False) → False
new_esEs24(vyw28001, vyw29001, ty_Integer) → new_esEs18(vyw28001, vyw29001)
new_compare113(vyw28000, vyw29000, True) → LT
new_not(False) → True
new_esEs22(vyw300, vyw4000, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, ty_Char) → new_compare18(vyw28000, vyw29000)
new_compare114(vyw28000, vyw29000, False, bh, ca) → GT
new_lt20(vyw28000, vyw29000, ty_Bool) → new_lt8(vyw28000, vyw29000)
new_esEs30(vyw18, vyw13, ty_Double) → new_esEs12(vyw18, vyw13)
new_esEs8(vyw28000, vyw29000, app(ty_Maybe, cd)) → new_esEs6(vyw28000, vyw29000, cd)
new_primCmpInt(Pos(Succ(vyw280000)), Pos(vyw29000)) → new_primCmpNat0(Succ(vyw280000), vyw29000)
new_ltEs20(vyw28002, vyw29002, ty_Ordering) → new_ltEs13(vyw28002, vyw29002)
new_esEs23(vyw28000, vyw29000, ty_@0) → new_esEs15(vyw28000, vyw29000)
new_primPlusNat0(Zero, vyw400100) → Succ(vyw400100)
new_ltEs5(vyw28001, vyw29001, app(ty_Ratio, df)) → new_ltEs11(vyw28001, vyw29001, df)
new_esEs8(vyw28000, vyw29000, app(ty_[], cb)) → new_esEs11(vyw28000, vyw29000, cb)
new_esEs19(vyw300, vyw4000, ty_Char) → new_esEs17(vyw300, vyw4000)
new_compare113(vyw28000, vyw29000, False) → GT
new_esEs19(vyw300, vyw4000, ty_Double) → new_esEs12(vyw300, vyw4000)
new_ltEs19(vyw2800, vyw2900, ty_Int) → new_ltEs6(vyw2800, vyw2900)
new_esEs25(vyw300, vyw4000, ty_@0) → new_esEs15(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, app(ty_[], ge)) → new_esEs11(vyw301, vyw4001, ge)
new_compare0(:(vyw28000, vyw28001), [], bae) → GT
new_lt20(vyw28000, vyw29000, ty_Int) → new_lt6(vyw28000, vyw29000)
new_compare28(vyw28000, vyw29000, True) → EQ
new_esEs26(vyw301, vyw4001, app(app(ty_Either, dde), ddf)) → new_esEs5(vyw301, vyw4001, dde, ddf)
new_lt8(vyw28000, vyw29000) → new_esEs14(new_compare10(vyw28000, vyw29000), LT)
new_primCmpInt(Pos(Succ(vyw280000)), Neg(vyw29000)) → GT
new_esEs22(vyw300, vyw4000, app(app(app(ty_@3, bge), bgf), bgg)) → new_esEs7(vyw300, vyw4000, bge, bgf, bgg)
new_esEs8(vyw28000, vyw29000, app(app(app(ty_@3, ce), cf), cg)) → new_esEs7(vyw28000, vyw29000, ce, cf, cg)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(app(ty_Either, ceb), cec)) → new_ltEs7(vyw28000, vyw29000, ceb, cec)
new_lt19(vyw28001, vyw29001, ty_Char) → new_lt17(vyw28001, vyw29001)
new_lt19(vyw28001, vyw29001, app(app(app(ty_@3, cba), cbb), cbc)) → new_lt14(vyw28001, vyw29001, cba, cbb, cbc)
new_compare115(vyw28000, vyw29000, False, ce, cf, cg) → GT
new_lt19(vyw28001, vyw29001, ty_Float) → new_lt16(vyw28001, vyw29001)
new_primMulInt(Pos(vyw3010), Pos(vyw40010)) → Pos(new_primMulNat0(vyw3010, vyw40010))
new_esEs21(vyw302, vyw4002, app(app(ty_@2, he), hf)) → new_esEs4(vyw302, vyw4002, he, hf)
new_lt4(vyw28000, vyw29000, ty_@0) → new_lt15(vyw28000, vyw29000)
new_compare19(Integer(vyw28000), Integer(vyw29000)) → new_primCmpInt(vyw28000, vyw29000)
new_esEs10(True, True) → True
new_esEs30(vyw18, vyw13, ty_Ordering) → new_esEs14(vyw18, vyw13)
new_esEs5(Right(vyw300), Left(vyw4000), chh, cge) → False
new_esEs5(Left(vyw300), Right(vyw4000), chh, cge) → False
new_lt4(vyw28000, vyw29000, ty_Float) → new_lt16(vyw28000, vyw29000)
new_primMulInt(Neg(vyw3010), Neg(vyw40010)) → Pos(new_primMulNat0(vyw3010, vyw40010))
new_ltEs5(vyw28001, vyw29001, app(ty_Maybe, dg)) → new_ltEs12(vyw28001, vyw29001, dg)
new_ltEs8(False, False) → True
new_primEqNat0(Succ(vyw3000), Zero) → False
new_primEqNat0(Zero, Succ(vyw40000)) → False
new_esEs21(vyw302, vyw4002, ty_Int) → new_esEs9(vyw302, vyw4002)
new_ltEs19(vyw2800, vyw2900, app(app(app(ty_@3, bfb), bfc), bfd)) → new_ltEs14(vyw2800, vyw2900, bfb, bfc, bfd)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(app(ty_Either, bcc), bcd), bcb) → new_ltEs7(vyw28000, vyw29000, bcc, bcd)
new_esEs25(vyw300, vyw4000, app(ty_Maybe, dbg)) → new_esEs6(vyw300, vyw4000, dbg)
new_esEs20(vyw301, vyw4001, ty_@0) → new_esEs15(vyw301, vyw4001)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs16(vyw2800, vyw2900) → new_not(new_esEs14(new_compare17(vyw2800, vyw2900), GT))
new_esEs25(vyw300, vyw4000, app(ty_[], dcb)) → new_esEs11(vyw300, vyw4000, dcb)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(app(app(ty_@3, bec), bed), bee)) → new_ltEs14(vyw28000, vyw29000, bec, bed, bee)
new_esEs22(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(ty_Maybe, beb)) → new_ltEs12(vyw28000, vyw29000, beb)
new_esEs26(vyw301, vyw4001, ty_Ordering) → new_esEs14(vyw301, vyw4001)
new_ltEs5(vyw28001, vyw29001, ty_Int) → new_ltEs6(vyw28001, vyw29001)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Char, bcb) → new_ltEs17(vyw28000, vyw29000)
new_esEs24(vyw28001, vyw29001, ty_Int) → new_esEs9(vyw28001, vyw29001)
new_lt4(vyw28000, vyw29000, ty_Int) → new_lt6(vyw28000, vyw29000)
new_esEs14(LT, EQ) → False
new_esEs14(EQ, LT) → False
new_esEs21(vyw302, vyw4002, ty_Char) → new_esEs17(vyw302, vyw4002)
new_primCmpInt(Neg(Zero), Neg(Succ(vyw290000))) → new_primCmpNat0(Succ(vyw290000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(vyw290000))) → GT
new_lt20(vyw28000, vyw29000, ty_Float) → new_lt16(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, ty_@0) → new_esEs15(vyw30, vyw400)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(app(app(ty_@3, dah), dba), dbb)) → new_esEs7(vyw300, vyw4000, dah, dba, dbb)
new_esEs27(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Integer, cge) → new_esEs18(vyw300, vyw4000)
new_esEs23(vyw28000, vyw29000, app(ty_[], bhd)) → new_esEs11(vyw28000, vyw29000, bhd)
new_compare26(vyw28000, vyw29000, False, ce, cf, cg) → new_compare115(vyw28000, vyw29000, new_ltEs14(vyw28000, vyw29000, ce, cf, cg), ce, cf, cg)
new_esEs6(Just(vyw300), Just(vyw4000), app(app(ty_Either, cfh), cga)) → new_esEs5(vyw300, vyw4000, cfh, cga)
new_lt4(vyw28000, vyw29000, ty_Ordering) → new_lt13(vyw28000, vyw29000)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Double, bcb) → new_ltEs10(vyw28000, vyw29000)
new_ltEs9(vyw2800, vyw2900, bae) → new_not(new_esEs14(new_compare0(vyw2800, vyw2900, bae), GT))
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Ordering, bcb) → new_ltEs13(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, ty_Bool) → new_esEs10(vyw30, vyw400)
new_esEs14(EQ, GT) → False
new_esEs14(GT, EQ) → False
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs24(vyw28001, vyw29001, app(app(app(ty_@3, cba), cbb), cbc)) → new_esEs7(vyw28001, vyw29001, cba, cbb, cbc)
new_compare17(Float(vyw28000, vyw28001), Float(vyw29000, vyw29001)) → new_compare8(new_sr(vyw28000, vyw29000), new_sr(vyw28001, vyw29001))
new_esEs5(Left(vyw300), Left(vyw4000), ty_Bool, cge) → new_esEs10(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, app(ty_Maybe, gb)) → new_esEs6(vyw301, vyw4001, gb)
new_compare13(vyw28000, vyw29000, cd) → new_compare25(vyw28000, vyw29000, new_esEs6(vyw28000, vyw29000, cd), cd)
new_lt19(vyw28001, vyw29001, ty_Ordering) → new_lt13(vyw28001, vyw29001)
new_ltEs13(GT, GT) → True
new_esEs24(vyw28001, vyw29001, ty_Double) → new_esEs12(vyw28001, vyw29001)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(app(ty_Either, bdf), bdg)) → new_ltEs7(vyw28000, vyw29000, bdf, bdg)
new_esEs15(@0, @0) → True
new_lt17(vyw28000, vyw29000) → new_esEs14(new_compare18(vyw28000, vyw29000), LT)
new_esEs13(:%(vyw300, vyw301), :%(vyw4000, vyw4001), dbc) → new_asAs(new_esEs27(vyw300, vyw4000, dbc), new_esEs28(vyw301, vyw4001, dbc))
new_asAs(False, vyw91) → False
new_esEs22(vyw300, vyw4000, ty_Double) → new_esEs12(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Integer) → new_ltEs18(vyw28000, vyw29000)
new_primMulInt(Pos(vyw3010), Neg(vyw40010)) → Neg(new_primMulNat0(vyw3010, vyw40010))
new_primMulInt(Neg(vyw3010), Pos(vyw40010)) → Neg(new_primMulNat0(vyw3010, vyw40010))
new_esEs6(Just(vyw300), Just(vyw4000), app(ty_[], cfg)) → new_esEs11(vyw300, vyw4000, cfg)
new_esEs22(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_primMulNat0(Succ(vyw30100), Zero) → Zero
new_primMulNat0(Zero, Succ(vyw400100)) → Zero
new_esEs21(vyw302, vyw4002, app(app(ty_Either, hh), baa)) → new_esEs5(vyw302, vyw4002, hh, baa)
new_esEs6(Just(vyw300), Just(vyw4000), app(ty_Maybe, cfd)) → new_esEs6(vyw300, vyw4000, cfd)
new_esEs19(vyw300, vyw4000, app(ty_[], fb)) → new_esEs11(vyw300, vyw4000, fb)
new_esEs23(vyw28000, vyw29000, ty_Int) → new_esEs9(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, ty_Char) → new_esEs17(vyw30, vyw400)
new_esEs30(vyw18, vyw13, app(ty_Ratio, ccf)) → new_esEs13(vyw18, vyw13, ccf)
new_esEs27(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, ty_Float) → new_esEs16(vyw301, vyw4001)
new_esEs18(Integer(vyw300), Integer(vyw4000)) → new_primEqInt(vyw300, vyw4000)
new_esEs6(Just(vyw300), Just(vyw4000), app(app(ty_@2, cfe), cff)) → new_esEs4(vyw300, vyw4000, cfe, cff)
new_lt19(vyw28001, vyw29001, app(ty_Maybe, cah)) → new_lt12(vyw28001, vyw29001, cah)
new_esEs23(vyw28000, vyw29000, app(ty_Maybe, bhf)) → new_esEs6(vyw28000, vyw29000, bhf)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Float, bcb) → new_ltEs16(vyw28000, vyw29000)
new_lt4(vyw28000, vyw29000, app(app(app(ty_@3, ce), cf), cg)) → new_lt14(vyw28000, vyw29000, ce, cf, cg)
new_esEs8(vyw28000, vyw29000, ty_Bool) → new_esEs10(vyw28000, vyw29000)
new_ltEs12(Nothing, Just(vyw29000), bfa) → True
new_ltEs7(Left(vyw28000), Left(vyw29000), app(ty_Maybe, bcg), bcb) → new_ltEs12(vyw28000, vyw29000, bcg)
new_esEs14(GT, GT) → True
new_esEs8(vyw28000, vyw29000, ty_Ordering) → new_esEs14(vyw28000, vyw29000)
new_esEs20(vyw301, vyw4001, app(app(ty_@2, gc), gd)) → new_esEs4(vyw301, vyw4001, gc, gd)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(app(app(ty_@3, bch), bda), bdb), bcb) → new_ltEs14(vyw28000, vyw29000, bch, bda, bdb)
new_esEs30(vyw18, vyw13, app(app(ty_Either, cdc), cdd)) → new_esEs5(vyw18, vyw13, cdc, cdd)
new_esEs23(vyw28000, vyw29000, ty_Bool) → new_esEs10(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), ty_@0, cge) → new_esEs15(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Ordering) → new_ltEs13(vyw28000, vyw29000)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(ty_Maybe, dab)) → new_esEs6(vyw300, vyw4000, dab)
new_esEs22(vyw300, vyw4000, ty_Float) → new_esEs16(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(app(app(ty_@3, ceg), ceh), cfa)) → new_ltEs14(vyw28000, vyw29000, ceg, ceh, cfa)
new_esEs25(vyw300, vyw4000, app(app(app(ty_@3, dce), dcf), dcg)) → new_esEs7(vyw300, vyw4000, dce, dcf, dcg)
new_ltEs20(vyw28002, vyw29002, app(app(ty_Either, cbf), cbg)) → new_ltEs7(vyw28002, vyw29002, cbf, cbg)
new_compare12(:%(vyw28000, vyw28001), :%(vyw29000, vyw29001), ty_Int) → new_compare8(new_sr(vyw28000, vyw29001), new_sr(vyw29000, vyw28001))
new_compare25(Just(vyw2800), Just(vyw2900), False, beg) → new_compare112(vyw2800, vyw2900, new_ltEs19(vyw2800, vyw2900, beg), beg)
new_esEs30(vyw18, vyw13, ty_Bool) → new_esEs10(vyw18, vyw13)
new_esEs26(vyw301, vyw4001, ty_Integer) → new_esEs18(vyw301, vyw4001)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Char) → new_ltEs17(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), app(app(ty_Either, chc), chd), cge) → new_esEs5(vyw300, vyw4000, chc, chd)
new_compare18(Char(vyw28000), Char(vyw29000)) → new_primCmpNat0(vyw28000, vyw29000)
new_ltEs5(vyw28001, vyw29001, ty_Double) → new_ltEs10(vyw28001, vyw29001)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Float) → new_esEs16(vyw300, vyw4000)
new_esEs21(vyw302, vyw4002, ty_Double) → new_esEs12(vyw302, vyw4002)
new_esEs21(vyw302, vyw4002, app(ty_[], hg)) → new_esEs11(vyw302, vyw4002, hg)
new_esEs28(vyw301, vyw4001, ty_Int) → new_esEs9(vyw301, vyw4001)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Integer) → new_esEs18(vyw300, vyw4000)
new_compare112(vyw84, vyw85, False, bef) → GT
new_esEs30(vyw18, vyw13, ty_Char) → new_esEs17(vyw18, vyw13)
new_ltEs13(LT, LT) → True
new_esEs23(vyw28000, vyw29000, ty_Double) → new_esEs12(vyw28000, vyw29000)
new_esEs20(vyw301, vyw4001, ty_Char) → new_esEs17(vyw301, vyw4001)
new_compare26(vyw28000, vyw29000, True, ce, cf, cg) → EQ
new_esEs6(Just(vyw300), Just(vyw4000), ty_@0) → new_esEs15(vyw300, vyw4000)
new_lt7(vyw28000, vyw29000, bh, ca) → new_esEs14(new_compare9(vyw28000, vyw29000, bh, ca), LT)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Integer, bcb) → new_ltEs18(vyw28000, vyw29000)
new_compare0([], :(vyw29000, vyw29001), bae) → LT
new_primPlusNat1(Zero, Zero) → Zero
new_ltEs5(vyw28001, vyw29001, app(app(ty_Either, dc), dd)) → new_ltEs7(vyw28001, vyw29001, dc, dd)
new_esEs24(vyw28001, vyw29001, ty_Float) → new_esEs16(vyw28001, vyw29001)
new_asAs(True, vyw91) → vyw91
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Double) → new_esEs12(vyw300, vyw4000)
new_ltEs5(vyw28001, vyw29001, ty_Float) → new_ltEs16(vyw28001, vyw29001)
new_primMulNat0(Succ(vyw30100), Succ(vyw400100)) → new_primPlusNat0(new_primMulNat0(vyw30100, Succ(vyw400100)), vyw400100)
new_ltEs5(vyw28001, vyw29001, ty_Integer) → new_ltEs18(vyw28001, vyw29001)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Ordering) → new_ltEs13(vyw28000, vyw29000)
new_esEs10(False, True) → False
new_esEs10(True, False) → False
new_esEs14(LT, LT) → True
new_ltEs12(Just(vyw28000), Nothing, bfa) → False
new_lt16(vyw28000, vyw29000) → new_esEs14(new_compare17(vyw28000, vyw29000), LT)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Float, cge) → new_esEs16(vyw300, vyw4000)
new_esEs29(vyw30, vyw400, ty_Integer) → new_esEs18(vyw30, vyw400)
new_esEs20(vyw301, vyw4001, ty_Integer) → new_esEs18(vyw301, vyw4001)
new_compare6(vyw28000, vyw29000, app(ty_Maybe, bbd)) → new_compare13(vyw28000, vyw29000, bbd)
new_esEs25(vyw300, vyw4000, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Float) → new_ltEs16(vyw28000, vyw29000)
new_esEs9(vyw30, vyw400) → new_primEqInt(vyw30, vyw400)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Bool, bcb) → new_ltEs8(vyw28000, vyw29000)
new_esEs24(vyw28001, vyw29001, app(ty_Maybe, cah)) → new_esEs6(vyw28001, vyw29001, cah)
new_esEs21(vyw302, vyw4002, ty_Bool) → new_esEs10(vyw302, vyw4002)
new_ltEs20(vyw28002, vyw29002, ty_Int) → new_ltEs6(vyw28002, vyw29002)
new_lt10(vyw28000, vyw29000) → new_esEs14(new_compare11(vyw28000, vyw29000), LT)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Integer) → new_ltEs18(vyw28000, vyw29000)
new_esEs19(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_ltEs5(vyw28001, vyw29001, ty_@0) → new_ltEs15(vyw28001, vyw29001)
new_esEs22(vyw300, vyw4000, app(app(ty_Either, bgc), bgd)) → new_esEs5(vyw300, vyw4000, bgc, bgd)
new_lt20(vyw28000, vyw29000, ty_Double) → new_lt10(vyw28000, vyw29000)
new_primCompAux00(vyw109, GT) → GT
new_esEs21(vyw302, vyw4002, ty_Float) → new_esEs16(vyw302, vyw4002)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_esEs19(vyw300, vyw4000, app(app(ty_@2, eh), fa)) → new_esEs4(vyw300, vyw4000, eh, fa)
new_ltEs10(vyw2800, vyw2900) → new_not(new_esEs14(new_compare11(vyw2800, vyw2900), GT))
new_lt20(vyw28000, vyw29000, app(ty_Maybe, bhf)) → new_lt12(vyw28000, vyw29000, bhf)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(ty_Ratio, daa)) → new_esEs13(vyw300, vyw4000, daa)
new_ltEs20(vyw28002, vyw29002, ty_Char) → new_ltEs17(vyw28002, vyw29002)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_esEs30(vyw18, vyw13, app(app(ty_@2, cch), cda)) → new_esEs4(vyw18, vyw13, cch, cda)
new_primCmpInt(Neg(Succ(vyw280000)), Pos(vyw29000)) → LT
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Int) → new_ltEs6(vyw28000, vyw29000)
new_compare11(Double(vyw28000, vyw28001), Double(vyw29000, vyw29001)) → new_compare8(new_sr(vyw28000, vyw29000), new_sr(vyw28001, vyw29001))
new_compare15(vyw28000, vyw29000, ce, cf, cg) → new_compare26(vyw28000, vyw29000, new_esEs7(vyw28000, vyw29000, ce, cf, cg), ce, cf, cg)
new_not(True) → False
new_ltEs19(vyw2800, vyw2900, ty_Ordering) → new_ltEs13(vyw2800, vyw2900)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Char, cge) → new_esEs17(vyw300, vyw4000)
new_ltEs4(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), bd, be) → new_pePe(new_lt4(vyw28000, vyw29000, bd), new_asAs(new_esEs8(vyw28000, vyw29000, bd), new_ltEs5(vyw28001, vyw29001, be)))
new_compare6(vyw28000, vyw29000, app(app(ty_@2, baf), bag)) → new_compare7(vyw28000, vyw29000, baf, bag)
The set Q consists of the following terms:
new_compare6(x0, x1, app(app(ty_@2, x2), x3))
new_pePe(True, x0)
new_ltEs7(Left(x0), Left(x1), ty_Char, x2)
new_compare114(x0, x1, True, x2, x3)
new_esEs21(x0, x1, ty_Integer)
new_ltEs19(x0, x1, app(ty_[], x2))
new_compare6(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_@0)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_esEs25(x0, x1, ty_Integer)
new_esEs23(x0, x1, ty_Ordering)
new_esEs22(x0, x1, ty_Char)
new_esEs5(Right(x0), Right(x1), x2, ty_Int)
new_esEs14(EQ, GT)
new_esEs14(GT, EQ)
new_compare24(x0, x1, True, x2, x3)
new_ltEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs21(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_Float)
new_ltEs12(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs5(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_primPlusNat1(Succ(x0), Succ(x1))
new_compare6(x0, x1, ty_Float)
new_esEs24(x0, x1, ty_Char)
new_ltEs15(x0, x1)
new_pePe(False, x0)
new_esEs8(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs25(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, ty_Integer)
new_lt4(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, ty_Float)
new_esEs26(x0, x1, ty_Float)
new_compare110(x0, x1, False, x2, x3)
new_esEs23(x0, x1, ty_Double)
new_esEs24(x0, x1, ty_Bool)
new_esEs9(x0, x1)
new_esEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Int)
new_compare25(Just(x0), Just(x1), False, x2)
new_esEs28(x0, x1, ty_Integer)
new_esEs30(x0, x1, ty_Char)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Zero)
new_ltEs12(Just(x0), Nothing, x1)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, app(ty_Maybe, x2))
new_esEs22(x0, x1, ty_Ordering)
new_esEs5(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_compare6(x0, x1, ty_Double)
new_ltEs18(x0, x1)
new_compare12(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs25(x0, x1, ty_Float)
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_lt9(x0, x1, x2)
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs21(x0, x1, ty_@0)
new_esEs24(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs8(True, True)
new_primCmpNat0(Succ(x0), Succ(x1))
new_ltEs19(x0, x1, ty_Int)
new_esEs6(Just(x0), Just(x1), app(ty_[], x2))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_compare6(x0, x1, ty_Ordering)
new_esEs6(Just(x0), Nothing, x1)
new_lt20(x0, x1, ty_Char)
new_compare13(x0, x1, x2)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_esEs5(Right(x0), Right(x1), x2, ty_Ordering)
new_compare12(:%(x0, x1), :%(x2, x3), ty_Int)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(Just(x0), Just(x1), ty_Char)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare28(x0, x1, True)
new_ltEs12(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs11([], :(x0, x1), x2)
new_ltEs12(Just(x0), Just(x1), ty_@0)
new_esEs14(LT, GT)
new_esEs14(GT, LT)
new_lt19(x0, x1, ty_Integer)
new_esEs29(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_asAs(True, x0)
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_ltEs12(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs12(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Double)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_primEqNat0(Zero, Zero)
new_esEs25(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs21(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, False)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(EQ, EQ)
new_lt20(x0, x1, app(ty_[], x2))
new_ltEs7(Right(x0), Right(x1), x2, ty_Double)
new_lt19(x0, x1, app(ty_[], x2))
new_esEs19(x0, x1, ty_Bool)
new_compare6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs27(x0, x1, ty_Int)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, ty_Integer)
new_esEs23(x0, x1, ty_@0)
new_ltEs10(x0, x1)
new_lt8(x0, x1)
new_primMulNat0(Zero, Zero)
new_lt13(x0, x1)
new_compare113(x0, x1, True)
new_esEs29(x0, x1, ty_Int)
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_esEs10(False, True)
new_esEs10(True, False)
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1, x2, x3)
new_esEs5(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primMulNat0(Zero, Succ(x0))
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs22(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_Int)
new_esEs6(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs5(Right(x0), Right(x1), x2, ty_Float)
new_ltEs13(LT, EQ)
new_ltEs13(EQ, LT)
new_primPlusNat0(Succ(x0), x1)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs5(Left(x0), Left(x1), ty_Integer, x2)
new_esEs19(x0, x1, ty_Integer)
new_esEs22(x0, x1, ty_Int)
new_ltEs19(x0, x1, ty_Integer)
new_esEs19(x0, x1, ty_Ordering)
new_ltEs12(Just(x0), Just(x1), ty_Bool)
new_esEs26(x0, x1, ty_@0)
new_esEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_compare15(x0, x1, x2, x3, x4)
new_ltEs9(x0, x1, x2)
new_sr(x0, x1)
new_primCmpNat0(Zero, Succ(x0))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs30(x0, x1, ty_Double)
new_esEs24(x0, x1, app(ty_[], x2))
new_lt4(x0, x1, ty_Double)
new_primEqNat0(Zero, Succ(x0))
new_esEs23(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_@0)
new_asAs(False, x0)
new_esEs24(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Integer)
new_compare0(:(x0, x1), [], x2)
new_ltEs6(x0, x1)
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_primMulInt(Pos(x0), Pos(x1))
new_esEs24(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Char)
new_compare27(x0, x1, True, x2, x3)
new_esEs20(x0, x1, ty_@0)
new_esEs6(Nothing, Nothing, x0)
new_compare28(x0, x1, False)
new_esEs22(x0, x1, ty_@0)
new_esEs6(Just(x0), Just(x1), ty_Bool)
new_lt4(x0, x1, ty_Int)
new_ltEs7(Left(x0), Right(x1), x2, x3)
new_ltEs7(Right(x0), Left(x1), x2, x3)
new_compare26(x0, x1, True, x2, x3, x4)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_compare16(@0, @0)
new_esEs5(Right(x0), Right(x1), x2, ty_Char)
new_ltEs19(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(Double(x0, x1), Double(x2, x3))
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare17(Float(x0, x1), Float(x2, x3))
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs23(x0, x1, ty_Float)
new_esEs6(Just(x0), Just(x1), ty_@0)
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs12(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Integer)
new_ltEs14(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs14(LT, LT)
new_esEs10(True, True)
new_esEs24(x0, x1, ty_Float)
new_esEs5(Left(x0), Left(x1), ty_Ordering, x2)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs19(x0, x1, ty_Int)
new_esEs22(x0, x1, ty_Double)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(ty_[], x2))
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs30(x0, x1, ty_Int)
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_lt19(x0, x1, ty_@0)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_compare113(x0, x1, False)
new_compare6(x0, x1, ty_Integer)
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs5(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11([], [], x0)
new_esEs8(x0, x1, ty_@0)
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs6(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_primCompAux0(x0, x1, x2, x3)
new_esEs5(Right(x0), Right(x1), x2, ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_lt19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_compare10(x0, x1)
new_esEs22(x0, x1, ty_Bool)
new_esEs27(x0, x1, ty_Integer)
new_ltEs7(Left(x0), Left(x1), ty_Int, x2)
new_esEs29(x0, x1, ty_Float)
new_esEs8(x0, x1, ty_Double)
new_lt20(x0, x1, ty_Integer)
new_ltEs13(EQ, GT)
new_ltEs13(GT, EQ)
new_esEs26(x0, x1, ty_Double)
new_esEs6(Just(x0), Just(x1), ty_Float)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_ltEs7(Left(x0), Left(x1), ty_Float, x2)
new_lt12(x0, x1, x2)
new_esEs11(:(x0, x1), :(x2, x3), x4)
new_esEs5(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs7(Left(x0), Left(x1), ty_Double, x2)
new_ltEs8(False, False)
new_lt20(x0, x1, ty_Double)
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_esEs21(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_ltEs19(x0, x1, ty_Float)
new_ltEs7(Right(x0), Right(x1), x2, ty_Float)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs8(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs8(x0, x1, ty_Float)
new_esEs23(x0, x1, app(ty_[], x2))
new_ltEs8(False, True)
new_ltEs8(True, False)
new_ltEs12(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs7(Right(x0), Right(x1), x2, ty_Char)
new_lt4(x0, x1, ty_Bool)
new_compare115(x0, x1, True, x2, x3, x4)
new_ltEs12(Just(x0), Just(x1), ty_Int)
new_compare19(Integer(x0), Integer(x1))
new_esEs25(x0, x1, ty_Char)
new_compare9(x0, x1, x2, x3)
new_lt18(x0, x1)
new_ltEs13(LT, GT)
new_ltEs13(GT, LT)
new_primCompAux00(x0, EQ)
new_esEs21(x0, x1, ty_Double)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs6(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_primEqInt(Neg(Zero), Neg(Zero))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_sr0(Integer(x0), Integer(x1))
new_compare110(x0, x1, True, x2, x3)
new_ltEs19(x0, x1, ty_Char)
new_lt4(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_Double)
new_compare18(Char(x0), Char(x1))
new_esEs8(x0, x1, ty_Bool)
new_ltEs5(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), ty_Ordering)
new_esEs20(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), ty_Integer)
new_compare8(x0, x1)
new_compare7(x0, x1, x2, x3)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs12(Just(x0), Just(x1), ty_Float)
new_ltEs19(x0, x1, ty_@0)
new_compare0([], :(x0, x1), x2)
new_ltEs7(Left(x0), Left(x1), ty_Integer, x2)
new_primCompAux00(x0, LT)
new_esEs5(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_lt17(x0, x1)
new_lt4(x0, x1, app(app(ty_@2, x2), x3))
new_esEs5(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs18(Integer(x0), Integer(x1))
new_lt20(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_lt4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs21(x0, x1, app(ty_[], x2))
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs17(Char(x0), Char(x1))
new_esEs19(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_compare26(x0, x1, False, x2, x3, x4)
new_esEs19(x0, x1, app(ty_[], x2))
new_lt6(x0, x1)
new_lt19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Bool)
new_lt4(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(Right(x0), Right(x1), x2, app(ty_[], x3))
new_lt19(x0, x1, ty_Ordering)
new_esEs23(x0, x1, ty_Int)
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs5(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs7(Left(x0), Left(x1), ty_@0, x2)
new_esEs5(Left(x0), Right(x1), x2, x3)
new_esEs5(Right(x0), Left(x1), x2, x3)
new_lt19(x0, x1, ty_Char)
new_esEs21(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, ty_Ordering)
new_ltEs7(Right(x0), Right(x1), x2, ty_Bool)
new_esEs23(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(Nothing, Just(x0), x1)
new_primCmpNat0(Zero, Zero)
new_esEs6(Just(x0), Just(x1), app(ty_Maybe, x2))
new_lt4(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Bool, x2)
new_esEs10(False, False)
new_compare112(x0, x1, True, x2)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, ty_Char)
new_primPlusNat1(Zero, Succ(x0))
new_lt20(x0, x1, ty_Int)
new_ltEs13(LT, LT)
new_esEs5(Left(x0), Left(x1), ty_Int, x2)
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_lt19(x0, x1, ty_Bool)
new_esEs15(@0, @0)
new_esEs5(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs30(x0, x1, ty_Ordering)
new_esEs22(x0, x1, ty_Integer)
new_esEs29(x0, x1, ty_Char)
new_compare6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Just(x0), Just(x1), ty_Char)
new_esEs6(Just(x0), Just(x1), ty_Double)
new_esEs30(x0, x1, ty_Float)
new_compare24(x0, x1, False, x2, x3)
new_ltEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs12(Nothing, Nothing, x0)
new_esEs25(x0, x1, ty_Bool)
new_primCmpNat0(Succ(x0), Zero)
new_compare6(x0, x1, app(ty_Maybe, x2))
new_ltEs12(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_compare25(Just(x0), Nothing, False, x1)
new_esEs5(Right(x0), Right(x1), x2, ty_Integer)
new_lt19(x0, x1, ty_Double)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(GT, GT)
new_ltEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs16(Float(x0, x1), Float(x2, x3))
new_esEs11(:(x0, x1), [], x2)
new_lt14(x0, x1, x2, x3, x4)
new_esEs24(x0, x1, ty_@0)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_lt11(x0, x1, x2)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_@0)
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(x0, x1)
new_not(True)
new_lt19(x0, x1, ty_Float)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_compare23(x0, x1, False)
new_ltEs11(x0, x1, x2)
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_lt4(x0, x1, ty_Ordering)
new_compare27(x0, x1, False, x2, x3)
new_esEs20(x0, x1, app(ty_[], x2))
new_esEs24(x0, x1, ty_Ordering)
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, ty_@0)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_primCompAux00(x0, GT)
new_esEs23(x0, x1, ty_Integer)
new_lt15(x0, x1)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_esEs25(x0, x1, app(ty_[], x2))
new_esEs8(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Double)
new_esEs25(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, True)
new_compare6(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Double, x2)
new_ltEs17(x0, x1)
new_lt7(x0, x1, x2, x3)
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Nothing, Just(x0), x1)
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Just(x0), Just(x1), ty_Integer)
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_esEs14(EQ, LT)
new_esEs14(LT, EQ)
new_esEs22(x0, x1, app(ty_[], x2))
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_compare6(x0, x1, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Float, x2)
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Ordering)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_esEs5(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_compare23(x0, x1, True)
new_compare115(x0, x1, False, x2, x3, x4)
new_esEs5(Left(x0), Left(x1), ty_@0, x2)
new_esEs14(GT, GT)
new_ltEs16(x0, x1)
new_compare25(x0, x1, True, x2)
new_esEs19(x0, x1, ty_@0)
new_esEs6(Just(x0), Just(x1), ty_Int)
new_esEs19(x0, x1, ty_Float)
new_lt4(x0, x1, ty_Float)
new_compare11(Double(x0, x1), Double(x2, x3))
new_esEs20(x0, x1, ty_Char)
new_esEs7(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt19(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Char)
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_compare114(x0, x1, False, x2, x3)
new_esEs25(x0, x1, ty_Double)
new_compare6(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs14(EQ, EQ)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_compare6(x0, x1, app(ty_Ratio, x2))
new_compare25(Nothing, Just(x0), False, x1)
new_compare6(x0, x1, ty_@0)
new_lt19(x0, x1, app(ty_Ratio, x2))
new_ltEs12(Just(x0), Just(x1), ty_Ordering)
new_esEs20(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_primEqNat0(Succ(x0), Succ(x1))
new_primEqInt(Pos(Zero), Pos(Zero))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_lt19(x0, x1, ty_Int)
new_compare112(x0, x1, False, x2)
new_ltEs7(Left(x0), Left(x1), ty_Bool, x2)
new_esEs5(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Ordering)
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_compare25(Nothing, Nothing, False, x0)
new_lt16(x0, x1)
new_esEs21(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare0(:(x0, x1), :(x2, x3), x4)
new_esEs5(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_ltEs5(x0, x1, ty_@0)
new_esEs5(Right(x0), Right(x1), x2, ty_@0)
new_primMulNat0(Succ(x0), Zero)
new_compare0([], [], x0)
new_primPlusNat0(Zero, x0)
new_esEs5(Right(x0), Right(x1), x2, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_lt10(x0, x1)
new_ltEs7(Right(x0), Right(x1), x2, ty_@0)
new_ltEs20(x0, x1, ty_Float)
We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [15,17,22] contains 2 SCCs.
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, False, h, ba) → new_elemFM04(vyw400, vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Just(vyw400), False, ba), GT), h, ba)
new_elemFM00(Branch(Just(vyw400), vyw41, vyw42, vyw43, vyw44), Nothing, h, ba) → new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Just(vyw400), False, ba), LT), h, ba)
new_elemFM04(vyw400, vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw44, Nothing, h, ba)
new_elemFM00(Branch(Nothing, vyw41, vyw42, vyw43, vyw44), Nothing, h, ba) → new_elemFM0(vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Nothing, True, ba), GT), h, ba)
new_elemFM0(vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw44, Nothing, h, ba)
new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw43, Nothing, h, ba)
The TRS R consists of the following rules:
new_esEs30(vyw18, vyw13, app(ty_Maybe, ccg)) → new_esEs6(vyw18, vyw13, ccg)
new_esEs26(vyw301, vyw4001, ty_@0) → new_esEs15(vyw301, vyw4001)
new_compare112(vyw84, vyw85, True, bef) → LT
new_esEs24(vyw28001, vyw29001, app(app(ty_Either, cad), cae)) → new_esEs5(vyw28001, vyw29001, cad, cae)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Char) → new_esEs17(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Int) → new_ltEs6(vyw28000, vyw29000)
new_ltEs19(vyw2800, vyw2900, app(ty_Ratio, beh)) → new_ltEs11(vyw2800, vyw2900, beh)
new_compare6(vyw28000, vyw29000, app(app(app(ty_@3, bbe), bbf), bbg)) → new_compare15(vyw28000, vyw29000, bbe, bbf, bbg)
new_ltEs8(False, True) → True
new_esEs5(Left(vyw300), Left(vyw4000), ty_Ordering, cge) → new_esEs14(vyw300, vyw4000)
new_esEs17(Char(vyw300), Char(vyw4000)) → new_primEqNat0(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, app(ty_[], bbb)) → new_compare0(vyw28000, vyw29000, bbb)
new_ltEs19(vyw2800, vyw2900, app(ty_[], bae)) → new_ltEs9(vyw2800, vyw2900, bae)
new_esEs24(vyw28001, vyw29001, ty_Char) → new_esEs17(vyw28001, vyw29001)
new_compare110(vyw28000, vyw29000, True, bf, bg) → LT
new_lt6(vyw28000, vyw29000) → new_esEs14(new_compare8(vyw28000, vyw29000), LT)
new_lt19(vyw28001, vyw29001, ty_Integer) → new_lt18(vyw28001, vyw29001)
new_esEs23(vyw28000, vyw29000, app(app(ty_Either, bhb), bhc)) → new_esEs5(vyw28000, vyw29000, bhb, bhc)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Double, cge) → new_esEs12(vyw300, vyw4000)
new_esEs23(vyw28000, vyw29000, app(app(ty_@2, bgh), bha)) → new_esEs4(vyw28000, vyw29000, bgh, bha)
new_esEs23(vyw28000, vyw29000, ty_Integer) → new_esEs18(vyw28000, vyw29000)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(ty_[], bdh)) → new_ltEs9(vyw28000, vyw29000, bdh)
new_esEs29(vyw30, vyw400, ty_Int) → new_esEs9(vyw30, vyw400)
new_esEs20(vyw301, vyw4001, ty_Int) → new_esEs9(vyw301, vyw4001)
new_lt4(vyw28000, vyw29000, ty_Double) → new_lt10(vyw28000, vyw29000)
new_esEs20(vyw301, vyw4001, ty_Double) → new_esEs12(vyw301, vyw4001)
new_compare27(vyw28000, vyw29000, False, bh, ca) → new_compare114(vyw28000, vyw29000, new_ltEs7(vyw28000, vyw29000, bh, ca), bh, ca)
new_esEs25(vyw300, vyw4000, ty_Char) → new_esEs17(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(ty_[], ced)) → new_ltEs9(vyw28000, vyw29000, ced)
new_esEs23(vyw28000, vyw29000, ty_Float) → new_esEs16(vyw28000, vyw29000)
new_ltEs12(Nothing, Nothing, bfa) → True
new_esEs16(Float(vyw300, vyw301), Float(vyw4000, vyw4001)) → new_esEs9(new_sr(vyw300, vyw4000), new_sr(vyw301, vyw4001))
new_ltEs7(Left(vyw28000), Right(vyw29000), bdc, bcb) → True
new_primMulNat0(Zero, Zero) → Zero
new_esEs25(vyw300, vyw4000, ty_Double) → new_esEs12(vyw300, vyw4000)
new_esEs6(Just(vyw300), Just(vyw4000), app(ty_Ratio, cfc)) → new_esEs13(vyw300, vyw4000, cfc)
new_ltEs20(vyw28002, vyw29002, ty_@0) → new_ltEs15(vyw28002, vyw29002)
new_esEs29(vyw30, vyw400, ty_Float) → new_esEs16(vyw30, vyw400)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Float) → new_esEs16(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Float) → new_ltEs16(vyw28000, vyw29000)
new_esEs23(vyw28000, vyw29000, app(ty_Ratio, bhe)) → new_esEs13(vyw28000, vyw29000, bhe)
new_esEs25(vyw300, vyw4000, app(app(ty_@2, dbh), dca)) → new_esEs4(vyw300, vyw4000, dbh, dca)
new_lt20(vyw28000, vyw29000, ty_Integer) → new_lt18(vyw28000, vyw29000)
new_compare25(vyw280, vyw290, True, beg) → EQ
new_compare10(vyw28000, vyw29000) → new_compare23(vyw28000, vyw29000, new_esEs10(vyw28000, vyw29000))
new_lt20(vyw28000, vyw29000, app(app(ty_@2, bgh), bha)) → new_lt5(vyw28000, vyw29000, bgh, bha)
new_esEs22(vyw300, vyw4000, ty_Char) → new_esEs17(vyw300, vyw4000)
new_esEs8(vyw28000, vyw29000, ty_Double) → new_esEs12(vyw28000, vyw29000)
new_compare14(vyw28000, vyw29000) → new_compare28(vyw28000, vyw29000, new_esEs14(vyw28000, vyw29000))
new_compare16(@0, @0) → EQ
new_lt18(vyw28000, vyw29000) → new_esEs14(new_compare19(vyw28000, vyw29000), LT)
new_esEs19(vyw300, vyw4000, app(app(app(ty_@3, ff), fg), fh)) → new_esEs7(vyw300, vyw4000, ff, fg, fh)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(app(ty_@2, bdd), bde)) → new_ltEs4(vyw28000, vyw29000, bdd, bde)
new_esEs30(vyw18, vyw13, ty_Int) → new_esEs9(vyw18, vyw13)
new_esEs22(vyw300, vyw4000, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs19(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_ltEs6(vyw2800, vyw2900) → new_not(new_esEs14(new_compare8(vyw2800, vyw2900), GT))
new_esEs20(vyw301, vyw4001, app(ty_Ratio, ga)) → new_esEs13(vyw301, vyw4001, ga)
new_ltEs13(LT, EQ) → True
new_ltEs20(vyw28002, vyw29002, app(ty_[], cbh)) → new_ltEs9(vyw28002, vyw29002, cbh)
new_esEs11([], [], bfe) → True
new_compare0(:(vyw28000, vyw28001), :(vyw29000, vyw29001), bae) → new_primCompAux0(vyw28000, vyw29000, new_compare0(vyw28001, vyw29001, bae), bae)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Double) → new_esEs12(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, ty_Float) → new_compare17(vyw28000, vyw29000)
new_esEs22(vyw300, vyw4000, app(ty_Maybe, bfg)) → new_esEs6(vyw300, vyw4000, bfg)
new_esEs21(vyw302, vyw4002, app(app(app(ty_@3, bab), bac), bad)) → new_esEs7(vyw302, vyw4002, bab, bac, bad)
new_compare12(:%(vyw28000, vyw28001), :%(vyw29000, vyw29001), ty_Integer) → new_compare19(new_sr0(vyw28000, vyw29001), new_sr0(vyw29000, vyw28001))
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_@0) → new_ltEs15(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, app(app(app(ty_@3, ec), ed), ee)) → new_esEs7(vyw30, vyw400, ec, ed, ee)
new_ltEs19(vyw2800, vyw2900, app(ty_Maybe, bfa)) → new_ltEs12(vyw2800, vyw2900, bfa)
new_lt15(vyw28000, vyw29000) → new_esEs14(new_compare16(vyw28000, vyw29000), LT)
new_compare6(vyw28000, vyw29000, ty_@0) → new_compare16(vyw28000, vyw29000)
new_esEs8(vyw28000, vyw29000, app(app(ty_@2, bf), bg)) → new_esEs4(vyw28000, vyw29000, bf, bg)
new_lt9(vyw28000, vyw29000, cb) → new_esEs14(new_compare0(vyw28000, vyw29000, cb), LT)
new_compare6(vyw28000, vyw29000, ty_Integer) → new_compare19(vyw28000, vyw29000)
new_ltEs5(vyw28001, vyw29001, ty_Ordering) → new_ltEs13(vyw28001, vyw29001)
new_esEs19(vyw300, vyw4000, app(app(ty_Either, fc), fd)) → new_esEs5(vyw300, vyw4000, fc, fd)
new_ltEs19(vyw2800, vyw2900, ty_Float) → new_ltEs16(vyw2800, vyw2900)
new_esEs5(Left(vyw300), Left(vyw4000), app(ty_Maybe, cgg), cge) → new_esEs6(vyw300, vyw4000, cgg)
new_pePe(False, vyw98) → vyw98
new_esEs26(vyw301, vyw4001, ty_Bool) → new_esEs10(vyw301, vyw4001)
new_esEs19(vyw300, vyw4000, ty_@0) → new_esEs15(vyw300, vyw4000)
new_lt19(vyw28001, vyw29001, ty_Double) → new_lt10(vyw28001, vyw29001)
new_ltEs19(vyw2800, vyw2900, app(app(ty_@2, bd), be)) → new_ltEs4(vyw2800, vyw2900, bd, be)
new_esEs8(vyw28000, vyw29000, ty_Float) → new_esEs16(vyw28000, vyw29000)
new_compare23(vyw28000, vyw29000, True) → EQ
new_esEs28(vyw301, vyw4001, ty_Integer) → new_esEs18(vyw301, vyw4001)
new_lt19(vyw28001, vyw29001, app(ty_[], caf)) → new_lt9(vyw28001, vyw29001, caf)
new_esEs19(vyw300, vyw4000, app(ty_Maybe, eg)) → new_esEs6(vyw300, vyw4000, eg)
new_esEs22(vyw300, vyw4000, ty_@0) → new_esEs15(vyw300, vyw4000)
new_ltEs5(vyw28001, vyw29001, app(app(ty_@2, da), db)) → new_ltEs4(vyw28001, vyw29001, da, db)
new_esEs22(vyw300, vyw4000, app(app(ty_@2, bfh), bga)) → new_esEs4(vyw300, vyw4000, bfh, bga)
new_ltEs14(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bfb, bfc, bfd) → new_pePe(new_lt20(vyw28000, vyw29000, bfb), new_asAs(new_esEs23(vyw28000, vyw29000, bfb), new_pePe(new_lt19(vyw28001, vyw29001, bfc), new_asAs(new_esEs24(vyw28001, vyw29001, bfc), new_ltEs20(vyw28002, vyw29002, bfd)))))
new_esEs14(EQ, EQ) → True
new_lt11(vyw28000, vyw29000, cc) → new_esEs14(new_compare12(vyw28000, vyw29000, cc), LT)
new_esEs19(vyw300, vyw4000, ty_Float) → new_esEs16(vyw300, vyw4000)
new_ltEs13(EQ, GT) → True
new_ltEs5(vyw28001, vyw29001, app(app(app(ty_@3, dh), ea), eb)) → new_ltEs14(vyw28001, vyw29001, dh, ea, eb)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_esEs29(vyw30, vyw400, app(ty_Ratio, dbc)) → new_esEs13(vyw30, vyw400, dbc)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_@0) → new_esEs15(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(ty_Ratio, cee)) → new_ltEs11(vyw28000, vyw29000, cee)
new_compare111(vyw28000, vyw29000, False) → GT
new_compare111(vyw28000, vyw29000, True) → LT
new_esEs24(vyw28001, vyw29001, app(ty_[], caf)) → new_esEs11(vyw28001, vyw29001, caf)
new_ltEs5(vyw28001, vyw29001, app(ty_[], de)) → new_ltEs9(vyw28001, vyw29001, de)
new_esEs29(vyw30, vyw400, app(app(ty_@2, dbd), dbe)) → new_esEs4(vyw30, vyw400, dbd, dbe)
new_esEs29(vyw30, vyw400, app(ty_[], bfe)) → new_esEs11(vyw30, vyw400, bfe)
new_lt20(vyw28000, vyw29000, app(app(ty_Either, bhb), bhc)) → new_lt7(vyw28000, vyw29000, bhb, bhc)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(app(ty_@2, dac), dad)) → new_esEs4(vyw300, vyw4000, dac, dad)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Char) → new_esEs17(vyw300, vyw4000)
new_ltEs20(vyw28002, vyw29002, app(app(ty_@2, cbd), cbe)) → new_ltEs4(vyw28002, vyw29002, cbd, cbe)
new_esEs23(vyw28000, vyw29000, app(app(app(ty_@3, bhg), bhh), caa)) → new_esEs7(vyw28000, vyw29000, bhg, bhh, caa)
new_primCmpNat0(Zero, Succ(vyw290000)) → LT
new_esEs26(vyw301, vyw4001, ty_Double) → new_esEs12(vyw301, vyw4001)
new_esEs20(vyw301, vyw4001, ty_Ordering) → new_esEs14(vyw301, vyw4001)
new_ltEs20(vyw28002, vyw29002, ty_Bool) → new_ltEs8(vyw28002, vyw29002)
new_lt19(vyw28001, vyw29001, app(app(ty_@2, cab), cac)) → new_lt5(vyw28001, vyw29001, cab, cac)
new_lt20(vyw28000, vyw29000, app(app(app(ty_@3, bhg), bhh), caa)) → new_lt14(vyw28000, vyw29000, bhg, bhh, caa)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(ty_Ratio, bcf), bcb) → new_ltEs11(vyw28000, vyw29000, bcf)
new_esEs25(vyw300, vyw4000, app(app(ty_Either, dcc), dcd)) → new_esEs5(vyw300, vyw4000, dcc, dcd)
new_compare24(vyw28000, vyw29000, False, bf, bg) → new_compare110(vyw28000, vyw29000, new_ltEs4(vyw28000, vyw29000, bf, bg), bf, bg)
new_lt20(vyw28000, vyw29000, ty_@0) → new_lt15(vyw28000, vyw29000)
new_esEs21(vyw302, vyw4002, app(ty_Ratio, hc)) → new_esEs13(vyw302, vyw4002, hc)
new_lt19(vyw28001, vyw29001, ty_@0) → new_lt15(vyw28001, vyw29001)
new_esEs7(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), ec, ed, ee) → new_asAs(new_esEs19(vyw300, vyw4000, ec), new_asAs(new_esEs20(vyw301, vyw4001, ed), new_esEs21(vyw302, vyw4002, ee)))
new_esEs25(vyw300, vyw4000, app(ty_Ratio, dbf)) → new_esEs13(vyw300, vyw4000, dbf)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Double) → new_ltEs10(vyw28000, vyw29000)
new_compare0([], [], bae) → EQ
new_pePe(True, vyw98) → True
new_primEqNat0(Zero, Zero) → True
new_esEs6(Just(vyw300), Just(vyw4000), app(app(app(ty_@3, cgb), cgc), cgd)) → new_esEs7(vyw300, vyw4000, cgb, cgc, cgd)
new_esEs23(vyw28000, vyw29000, ty_Ordering) → new_esEs14(vyw28000, vyw29000)
new_ltEs19(vyw2800, vyw2900, ty_Integer) → new_ltEs18(vyw2800, vyw2900)
new_ltEs5(vyw28001, vyw29001, ty_Bool) → new_ltEs8(vyw28001, vyw29001)
new_esEs29(vyw30, vyw400, app(ty_Maybe, cfb)) → new_esEs6(vyw30, vyw400, cfb)
new_esEs19(vyw300, vyw4000, app(ty_Ratio, ef)) → new_esEs13(vyw300, vyw4000, ef)
new_esEs26(vyw301, vyw4001, ty_Char) → new_esEs17(vyw301, vyw4001)
new_esEs19(vyw300, vyw4000, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs26(vyw301, vyw4001, app(ty_Maybe, dda)) → new_esEs6(vyw301, vyw4001, dda)
new_esEs8(vyw28000, vyw29000, ty_Int) → new_esEs9(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Int, cge) → new_esEs9(vyw300, vyw4000)
new_lt4(vyw28000, vyw29000, ty_Char) → new_lt17(vyw28000, vyw29000)
new_esEs26(vyw301, vyw4001, app(ty_Ratio, dch)) → new_esEs13(vyw301, vyw4001, dch)
new_lt20(vyw28000, vyw29000, app(ty_[], bhd)) → new_lt9(vyw28000, vyw29000, bhd)
new_esEs25(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_compare110(vyw28000, vyw29000, False, bf, bg) → GT
new_ltEs15(vyw2800, vyw2900) → new_not(new_esEs14(new_compare16(vyw2800, vyw2900), GT))
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Double) → new_ltEs10(vyw28000, vyw29000)
new_ltEs20(vyw28002, vyw29002, app(app(app(ty_@3, ccc), ccd), cce)) → new_ltEs14(vyw28002, vyw29002, ccc, ccd, cce)
new_sr(vyw301, vyw4001) → new_primMulInt(vyw301, vyw4001)
new_esEs30(vyw18, vyw13, app(ty_[], cdb)) → new_esEs11(vyw18, vyw13, cdb)
new_esEs11(:(vyw300, vyw301), :(vyw4000, vyw4001), bfe) → new_asAs(new_esEs22(vyw300, vyw4000, bfe), new_esEs11(vyw301, vyw4001, bfe))
new_esEs14(LT, GT) → False
new_esEs14(GT, LT) → False
new_ltEs20(vyw28002, vyw29002, app(ty_Ratio, cca)) → new_ltEs11(vyw28002, vyw29002, cca)
new_primPlusNat0(Succ(vyw1000), vyw400100) → Succ(Succ(new_primPlusNat1(vyw1000, vyw400100)))
new_lt19(vyw28001, vyw29001, app(ty_Ratio, cag)) → new_lt11(vyw28001, vyw29001, cag)
new_esEs25(vyw300, vyw4000, ty_Float) → new_esEs16(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, app(app(app(ty_@3, gh), ha), hb)) → new_esEs7(vyw301, vyw4001, gh, ha, hb)
new_ltEs18(vyw2800, vyw2900) → new_not(new_esEs14(new_compare19(vyw2800, vyw2900), GT))
new_ltEs19(vyw2800, vyw2900, ty_Double) → new_ltEs10(vyw2800, vyw2900)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(ty_[], dae)) → new_esEs11(vyw300, vyw4000, dae)
new_lt20(vyw28000, vyw29000, ty_Char) → new_lt17(vyw28000, vyw29000)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_@0, bcb) → new_ltEs15(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), app(ty_Ratio, cgf), cge) → new_esEs13(vyw300, vyw4000, cgf)
new_ltEs20(vyw28002, vyw29002, ty_Float) → new_ltEs16(vyw28002, vyw29002)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_@0) → new_ltEs15(vyw28000, vyw29000)
new_lt4(vyw28000, vyw29000, app(app(ty_Either, bh), ca)) → new_lt7(vyw28000, vyw29000, bh, ca)
new_lt14(vyw28000, vyw29000, ce, cf, cg) → new_esEs14(new_compare15(vyw28000, vyw29000, ce, cf, cg), LT)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Int, bcb) → new_ltEs6(vyw28000, vyw29000)
new_lt19(vyw28001, vyw29001, ty_Bool) → new_lt8(vyw28001, vyw29001)
new_primEqInt(Neg(Succ(vyw3000)), Neg(Succ(vyw40000))) → new_primEqNat0(vyw3000, vyw40000)
new_lt20(vyw28000, vyw29000, app(ty_Ratio, bhe)) → new_lt11(vyw28000, vyw29000, bhe)
new_compare6(vyw28000, vyw29000, ty_Bool) → new_compare10(vyw28000, vyw29000)
new_compare28(vyw28000, vyw29000, False) → new_compare113(vyw28000, vyw29000, new_ltEs13(vyw28000, vyw29000))
new_ltEs5(vyw28001, vyw29001, ty_Char) → new_ltEs17(vyw28001, vyw29001)
new_primCompAux0(vyw28000, vyw29000, vyw99, bae) → new_primCompAux00(vyw99, new_compare6(vyw28000, vyw29000, bae))
new_compare6(vyw28000, vyw29000, ty_Int) → new_compare8(vyw28000, vyw29000)
new_esEs12(Double(vyw300, vyw301), Double(vyw4000, vyw4001)) → new_esEs9(new_sr(vyw300, vyw4000), new_sr(vyw301, vyw4001))
new_esEs19(vyw300, vyw4000, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_primPlusNat1(Succ(vyw10000), Zero) → Succ(vyw10000)
new_primPlusNat1(Zero, Succ(vyw4001000)) → Succ(vyw4001000)
new_lt4(vyw28000, vyw29000, ty_Integer) → new_lt18(vyw28000, vyw29000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Bool) → new_ltEs8(vyw28000, vyw29000)
new_compare25(Just(vyw2800), Nothing, False, beg) → GT
new_compare6(vyw28000, vyw29000, app(ty_Ratio, bbc)) → new_compare12(vyw28000, vyw29000, bbc)
new_esEs8(vyw28000, vyw29000, ty_@0) → new_esEs15(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, app(app(ty_Either, chh), cge)) → new_esEs5(vyw30, vyw400, chh, cge)
new_compare25(Nothing, Nothing, False, beg) → LT
new_ltEs8(True, True) → True
new_esEs26(vyw301, vyw4001, app(app(app(ty_@3, ddg), ddh), dea)) → new_esEs7(vyw301, vyw4001, ddg, ddh, dea)
new_esEs21(vyw302, vyw4002, ty_Ordering) → new_esEs14(vyw302, vyw4002)
new_esEs21(vyw302, vyw4002, ty_@0) → new_esEs15(vyw302, vyw4002)
new_ltEs13(LT, GT) → True
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Bool) → new_ltEs8(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), app(app(app(ty_@3, che), chf), chg), cge) → new_esEs7(vyw300, vyw4000, che, chf, chg)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs24(vyw28001, vyw29001, ty_Bool) → new_esEs10(vyw28001, vyw29001)
new_ltEs7(Right(vyw28000), Left(vyw29000), bdc, bcb) → False
new_compare6(vyw28000, vyw29000, ty_Ordering) → new_compare14(vyw28000, vyw29000)
new_esEs30(vyw18, vyw13, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs7(vyw18, vyw13, cde, cdf, cdg)
new_esEs8(vyw28000, vyw29000, app(ty_Ratio, cc)) → new_esEs13(vyw28000, vyw29000, cc)
new_compare8(vyw2800, vyw2900) → new_primCmpInt(vyw2800, vyw2900)
new_primEqInt(Neg(Succ(vyw3000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(vyw40000))) → False
new_lt12(vyw28000, vyw29000, cd) → new_esEs14(new_compare13(vyw28000, vyw29000, cd), LT)
new_lt20(vyw28000, vyw29000, ty_Ordering) → new_lt13(vyw28000, vyw29000)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(ty_Ratio, bea)) → new_ltEs11(vyw28000, vyw29000, bea)
new_compare24(vyw28000, vyw29000, True, bf, bg) → EQ
new_lt4(vyw28000, vyw29000, ty_Bool) → new_lt8(vyw28000, vyw29000)
new_esEs10(False, False) → True
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Char) → new_ltEs17(vyw28000, vyw29000)
new_ltEs19(vyw2800, vyw2900, ty_Char) → new_ltEs17(vyw2800, vyw2900)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs21(vyw302, vyw4002, ty_Integer) → new_esEs18(vyw302, vyw4002)
new_lt4(vyw28000, vyw29000, app(ty_Ratio, cc)) → new_lt11(vyw28000, vyw29000, cc)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(app(ty_@2, bbh), bca), bcb) → new_ltEs4(vyw28000, vyw29000, bbh, bca)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs5(Left(vyw300), Left(vyw4000), app(ty_[], chb), cge) → new_esEs11(vyw300, vyw4000, chb)
new_lt19(vyw28001, vyw29001, ty_Int) → new_lt6(vyw28001, vyw29001)
new_primCmpNat0(Succ(vyw280000), Succ(vyw290000)) → new_primCmpNat0(vyw280000, vyw290000)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_esEs30(vyw18, vyw13, ty_@0) → new_esEs15(vyw18, vyw13)
new_esEs6(Nothing, Nothing, cfb) → True
new_esEs29(vyw30, vyw400, ty_Ordering) → new_esEs14(vyw30, vyw400)
new_ltEs13(GT, LT) → False
new_primEqInt(Pos(Succ(vyw3000)), Pos(Succ(vyw40000))) → new_primEqNat0(vyw3000, vyw40000)
new_compare27(vyw28000, vyw29000, True, bh, ca) → EQ
new_esEs21(vyw302, vyw4002, app(ty_Maybe, hd)) → new_esEs6(vyw302, vyw4002, hd)
new_ltEs13(EQ, EQ) → True
new_esEs23(vyw28000, vyw29000, ty_Char) → new_esEs17(vyw28000, vyw29000)
new_lt4(vyw28000, vyw29000, app(ty_Maybe, cd)) → new_lt12(vyw28000, vyw29000, cd)
new_ltEs17(vyw2800, vyw2900) → new_not(new_esEs14(new_compare18(vyw2800, vyw2900), GT))
new_esEs25(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(app(ty_Either, daf), dag)) → new_esEs5(vyw300, vyw4000, daf, dag)
new_esEs8(vyw28000, vyw29000, ty_Integer) → new_esEs18(vyw28000, vyw29000)
new_esEs6(Just(vyw300), Nothing, cfb) → False
new_esEs6(Nothing, Just(vyw4000), cfb) → False
new_primEqNat0(Succ(vyw3000), Succ(vyw40000)) → new_primEqNat0(vyw3000, vyw40000)
new_lt5(vyw28000, vyw29000, bf, bg) → new_esEs14(new_compare7(vyw28000, vyw29000, bf, bg), LT)
new_esEs30(vyw18, vyw13, ty_Integer) → new_esEs18(vyw18, vyw13)
new_primCompAux00(vyw109, LT) → LT
new_esEs26(vyw301, vyw4001, app(ty_[], ddd)) → new_esEs11(vyw301, vyw4001, ddd)
new_primCmpInt(Neg(Succ(vyw280000)), Neg(vyw29000)) → new_primCmpNat0(vyw29000, Succ(vyw280000))
new_ltEs19(vyw2800, vyw2900, app(app(ty_Either, bdc), bcb)) → new_ltEs7(vyw2800, vyw2900, bdc, bcb)
new_compare114(vyw28000, vyw29000, True, bh, ca) → LT
new_esEs26(vyw301, vyw4001, app(app(ty_@2, ddb), ddc)) → new_esEs4(vyw301, vyw4001, ddb, ddc)
new_compare115(vyw28000, vyw29000, True, ce, cf, cg) → LT
new_ltEs7(Left(vyw28000), Left(vyw29000), app(ty_[], bce), bcb) → new_ltEs9(vyw28000, vyw29000, bce)
new_lt19(vyw28001, vyw29001, app(app(ty_Either, cad), cae)) → new_lt7(vyw28001, vyw29001, cad, cae)
new_ltEs19(vyw2800, vyw2900, ty_Bool) → new_ltEs8(vyw2800, vyw2900)
new_primEqInt(Pos(Zero), Pos(Succ(vyw40000))) → False
new_primEqInt(Pos(Succ(vyw3000)), Pos(Zero)) → False
new_ltEs20(vyw28002, vyw29002, app(ty_Maybe, ccb)) → new_ltEs12(vyw28002, vyw29002, ccb)
new_lt4(vyw28000, vyw29000, app(ty_[], cb)) → new_lt9(vyw28000, vyw29000, cb)
new_esEs30(vyw18, vyw13, ty_Float) → new_esEs16(vyw18, vyw13)
new_lt13(vyw28000, vyw29000) → new_esEs14(new_compare14(vyw28000, vyw29000), LT)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(vyw280000), Zero) → GT
new_ltEs12(Just(vyw28000), Just(vyw29000), app(app(ty_@2, cdh), cea)) → new_ltEs4(vyw28000, vyw29000, cdh, cea)
new_compare9(vyw28000, vyw29000, bh, ca) → new_compare27(vyw28000, vyw29000, new_esEs5(vyw28000, vyw29000, bh, ca), bh, ca)
new_esEs24(vyw28001, vyw29001, ty_@0) → new_esEs15(vyw28001, vyw29001)
new_primCmpInt(Neg(Zero), Pos(Succ(vyw290000))) → LT
new_esEs20(vyw301, vyw4001, app(app(ty_Either, gf), gg)) → new_esEs5(vyw301, vyw4001, gf, gg)
new_esEs22(vyw300, vyw4000, app(ty_Ratio, bff)) → new_esEs13(vyw300, vyw4000, bff)
new_sr0(Integer(vyw280000), Integer(vyw290010)) → Integer(new_primMulInt(vyw280000, vyw290010))
new_lt4(vyw28000, vyw29000, app(app(ty_@2, bf), bg)) → new_lt5(vyw28000, vyw29000, bf, bg)
new_primPlusNat1(Succ(vyw10000), Succ(vyw4001000)) → Succ(Succ(new_primPlusNat1(vyw10000, vyw4001000)))
new_ltEs11(vyw2800, vyw2900, beh) → new_not(new_esEs14(new_compare12(vyw2800, vyw2900, beh), GT))
new_primEqInt(Neg(Succ(vyw3000)), Pos(vyw4000)) → False
new_primEqInt(Pos(Succ(vyw3000)), Neg(vyw4000)) → False
new_esEs24(vyw28001, vyw29001, app(ty_Ratio, cag)) → new_esEs13(vyw28001, vyw29001, cag)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(ty_Maybe, cef)) → new_ltEs12(vyw28000, vyw29000, cef)
new_esEs24(vyw28001, vyw29001, app(app(ty_@2, cab), cac)) → new_esEs4(vyw28001, vyw29001, cab, cac)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, app(app(ty_Either, bah), bba)) → new_compare9(vyw28000, vyw29000, bah, bba)
new_esEs8(vyw28000, vyw29000, app(app(ty_Either, bh), ca)) → new_esEs5(vyw28000, vyw29000, bh, ca)
new_ltEs19(vyw2800, vyw2900, ty_@0) → new_ltEs15(vyw2800, vyw2900)
new_ltEs20(vyw28002, vyw29002, ty_Double) → new_ltEs10(vyw28002, vyw29002)
new_esEs11([], :(vyw4000, vyw4001), bfe) → False
new_esEs11(:(vyw300, vyw301), [], bfe) → False
new_ltEs20(vyw28002, vyw29002, ty_Integer) → new_ltEs18(vyw28002, vyw29002)
new_esEs26(vyw301, vyw4001, ty_Int) → new_esEs9(vyw301, vyw4001)
new_esEs8(vyw28000, vyw29000, ty_Char) → new_esEs17(vyw28000, vyw29000)
new_primEqInt(Pos(Zero), Neg(Succ(vyw40000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(vyw40000))) → False
new_esEs4(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dbd, dbe) → new_asAs(new_esEs25(vyw300, vyw4000, dbd), new_esEs26(vyw301, vyw4001, dbe))
new_esEs5(Left(vyw300), Left(vyw4000), app(app(ty_@2, cgh), cha), cge) → new_esEs4(vyw300, vyw4000, cgh, cha)
new_esEs22(vyw300, vyw4000, app(ty_[], bgb)) → new_esEs11(vyw300, vyw4000, bgb)
new_compare23(vyw28000, vyw29000, False) → new_compare111(vyw28000, vyw29000, new_ltEs8(vyw28000, vyw29000))
new_primCmpInt(Pos(Zero), Pos(Succ(vyw290000))) → new_primCmpNat0(Zero, Succ(vyw290000))
new_primCompAux00(vyw109, EQ) → vyw109
new_esEs20(vyw301, vyw4001, ty_Bool) → new_esEs10(vyw301, vyw4001)
new_compare7(vyw28000, vyw29000, bf, bg) → new_compare24(vyw28000, vyw29000, new_esEs4(vyw28000, vyw29000, bf, bg), bf, bg)
new_ltEs13(GT, EQ) → False
new_esEs24(vyw28001, vyw29001, ty_Ordering) → new_esEs14(vyw28001, vyw29001)
new_compare25(Nothing, Just(vyw2900), False, beg) → LT
new_ltEs13(EQ, LT) → False
new_esEs29(vyw30, vyw400, ty_Double) → new_esEs12(vyw30, vyw400)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs25(vyw300, vyw4000, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs26(vyw301, vyw4001, ty_Float) → new_esEs16(vyw301, vyw4001)
new_compare6(vyw28000, vyw29000, ty_Double) → new_compare11(vyw28000, vyw29000)
new_ltEs8(True, False) → False
new_esEs24(vyw28001, vyw29001, ty_Integer) → new_esEs18(vyw28001, vyw29001)
new_compare113(vyw28000, vyw29000, True) → LT
new_not(False) → True
new_esEs22(vyw300, vyw4000, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, ty_Char) → new_compare18(vyw28000, vyw29000)
new_compare114(vyw28000, vyw29000, False, bh, ca) → GT
new_lt20(vyw28000, vyw29000, ty_Bool) → new_lt8(vyw28000, vyw29000)
new_esEs30(vyw18, vyw13, ty_Double) → new_esEs12(vyw18, vyw13)
new_esEs8(vyw28000, vyw29000, app(ty_Maybe, cd)) → new_esEs6(vyw28000, vyw29000, cd)
new_primCmpInt(Pos(Succ(vyw280000)), Pos(vyw29000)) → new_primCmpNat0(Succ(vyw280000), vyw29000)
new_ltEs20(vyw28002, vyw29002, ty_Ordering) → new_ltEs13(vyw28002, vyw29002)
new_esEs23(vyw28000, vyw29000, ty_@0) → new_esEs15(vyw28000, vyw29000)
new_primPlusNat0(Zero, vyw400100) → Succ(vyw400100)
new_ltEs5(vyw28001, vyw29001, app(ty_Ratio, df)) → new_ltEs11(vyw28001, vyw29001, df)
new_esEs8(vyw28000, vyw29000, app(ty_[], cb)) → new_esEs11(vyw28000, vyw29000, cb)
new_esEs19(vyw300, vyw4000, ty_Char) → new_esEs17(vyw300, vyw4000)
new_compare113(vyw28000, vyw29000, False) → GT
new_esEs19(vyw300, vyw4000, ty_Double) → new_esEs12(vyw300, vyw4000)
new_ltEs19(vyw2800, vyw2900, ty_Int) → new_ltEs6(vyw2800, vyw2900)
new_esEs25(vyw300, vyw4000, ty_@0) → new_esEs15(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, app(ty_[], ge)) → new_esEs11(vyw301, vyw4001, ge)
new_compare0(:(vyw28000, vyw28001), [], bae) → GT
new_lt20(vyw28000, vyw29000, ty_Int) → new_lt6(vyw28000, vyw29000)
new_compare28(vyw28000, vyw29000, True) → EQ
new_esEs26(vyw301, vyw4001, app(app(ty_Either, dde), ddf)) → new_esEs5(vyw301, vyw4001, dde, ddf)
new_lt8(vyw28000, vyw29000) → new_esEs14(new_compare10(vyw28000, vyw29000), LT)
new_primCmpInt(Pos(Succ(vyw280000)), Neg(vyw29000)) → GT
new_esEs22(vyw300, vyw4000, app(app(app(ty_@3, bge), bgf), bgg)) → new_esEs7(vyw300, vyw4000, bge, bgf, bgg)
new_esEs8(vyw28000, vyw29000, app(app(app(ty_@3, ce), cf), cg)) → new_esEs7(vyw28000, vyw29000, ce, cf, cg)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(app(ty_Either, ceb), cec)) → new_ltEs7(vyw28000, vyw29000, ceb, cec)
new_lt19(vyw28001, vyw29001, ty_Char) → new_lt17(vyw28001, vyw29001)
new_lt19(vyw28001, vyw29001, app(app(app(ty_@3, cba), cbb), cbc)) → new_lt14(vyw28001, vyw29001, cba, cbb, cbc)
new_compare115(vyw28000, vyw29000, False, ce, cf, cg) → GT
new_lt19(vyw28001, vyw29001, ty_Float) → new_lt16(vyw28001, vyw29001)
new_primMulInt(Pos(vyw3010), Pos(vyw40010)) → Pos(new_primMulNat0(vyw3010, vyw40010))
new_esEs21(vyw302, vyw4002, app(app(ty_@2, he), hf)) → new_esEs4(vyw302, vyw4002, he, hf)
new_lt4(vyw28000, vyw29000, ty_@0) → new_lt15(vyw28000, vyw29000)
new_compare19(Integer(vyw28000), Integer(vyw29000)) → new_primCmpInt(vyw28000, vyw29000)
new_esEs10(True, True) → True
new_esEs30(vyw18, vyw13, ty_Ordering) → new_esEs14(vyw18, vyw13)
new_esEs5(Right(vyw300), Left(vyw4000), chh, cge) → False
new_esEs5(Left(vyw300), Right(vyw4000), chh, cge) → False
new_lt4(vyw28000, vyw29000, ty_Float) → new_lt16(vyw28000, vyw29000)
new_primMulInt(Neg(vyw3010), Neg(vyw40010)) → Pos(new_primMulNat0(vyw3010, vyw40010))
new_ltEs5(vyw28001, vyw29001, app(ty_Maybe, dg)) → new_ltEs12(vyw28001, vyw29001, dg)
new_ltEs8(False, False) → True
new_primEqNat0(Succ(vyw3000), Zero) → False
new_primEqNat0(Zero, Succ(vyw40000)) → False
new_esEs21(vyw302, vyw4002, ty_Int) → new_esEs9(vyw302, vyw4002)
new_ltEs19(vyw2800, vyw2900, app(app(app(ty_@3, bfb), bfc), bfd)) → new_ltEs14(vyw2800, vyw2900, bfb, bfc, bfd)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(app(ty_Either, bcc), bcd), bcb) → new_ltEs7(vyw28000, vyw29000, bcc, bcd)
new_esEs25(vyw300, vyw4000, app(ty_Maybe, dbg)) → new_esEs6(vyw300, vyw4000, dbg)
new_esEs20(vyw301, vyw4001, ty_@0) → new_esEs15(vyw301, vyw4001)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs16(vyw2800, vyw2900) → new_not(new_esEs14(new_compare17(vyw2800, vyw2900), GT))
new_esEs25(vyw300, vyw4000, app(ty_[], dcb)) → new_esEs11(vyw300, vyw4000, dcb)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(app(app(ty_@3, bec), bed), bee)) → new_ltEs14(vyw28000, vyw29000, bec, bed, bee)
new_esEs22(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(ty_Maybe, beb)) → new_ltEs12(vyw28000, vyw29000, beb)
new_esEs26(vyw301, vyw4001, ty_Ordering) → new_esEs14(vyw301, vyw4001)
new_ltEs5(vyw28001, vyw29001, ty_Int) → new_ltEs6(vyw28001, vyw29001)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Char, bcb) → new_ltEs17(vyw28000, vyw29000)
new_esEs24(vyw28001, vyw29001, ty_Int) → new_esEs9(vyw28001, vyw29001)
new_lt4(vyw28000, vyw29000, ty_Int) → new_lt6(vyw28000, vyw29000)
new_esEs14(LT, EQ) → False
new_esEs14(EQ, LT) → False
new_esEs21(vyw302, vyw4002, ty_Char) → new_esEs17(vyw302, vyw4002)
new_primCmpInt(Neg(Zero), Neg(Succ(vyw290000))) → new_primCmpNat0(Succ(vyw290000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(vyw290000))) → GT
new_lt20(vyw28000, vyw29000, ty_Float) → new_lt16(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, ty_@0) → new_esEs15(vyw30, vyw400)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(app(app(ty_@3, dah), dba), dbb)) → new_esEs7(vyw300, vyw4000, dah, dba, dbb)
new_esEs27(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Integer, cge) → new_esEs18(vyw300, vyw4000)
new_esEs23(vyw28000, vyw29000, app(ty_[], bhd)) → new_esEs11(vyw28000, vyw29000, bhd)
new_compare26(vyw28000, vyw29000, False, ce, cf, cg) → new_compare115(vyw28000, vyw29000, new_ltEs14(vyw28000, vyw29000, ce, cf, cg), ce, cf, cg)
new_esEs6(Just(vyw300), Just(vyw4000), app(app(ty_Either, cfh), cga)) → new_esEs5(vyw300, vyw4000, cfh, cga)
new_lt4(vyw28000, vyw29000, ty_Ordering) → new_lt13(vyw28000, vyw29000)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Double, bcb) → new_ltEs10(vyw28000, vyw29000)
new_ltEs9(vyw2800, vyw2900, bae) → new_not(new_esEs14(new_compare0(vyw2800, vyw2900, bae), GT))
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Ordering, bcb) → new_ltEs13(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, ty_Bool) → new_esEs10(vyw30, vyw400)
new_esEs14(EQ, GT) → False
new_esEs14(GT, EQ) → False
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs24(vyw28001, vyw29001, app(app(app(ty_@3, cba), cbb), cbc)) → new_esEs7(vyw28001, vyw29001, cba, cbb, cbc)
new_compare17(Float(vyw28000, vyw28001), Float(vyw29000, vyw29001)) → new_compare8(new_sr(vyw28000, vyw29000), new_sr(vyw28001, vyw29001))
new_esEs5(Left(vyw300), Left(vyw4000), ty_Bool, cge) → new_esEs10(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, app(ty_Maybe, gb)) → new_esEs6(vyw301, vyw4001, gb)
new_compare13(vyw28000, vyw29000, cd) → new_compare25(vyw28000, vyw29000, new_esEs6(vyw28000, vyw29000, cd), cd)
new_lt19(vyw28001, vyw29001, ty_Ordering) → new_lt13(vyw28001, vyw29001)
new_ltEs13(GT, GT) → True
new_esEs24(vyw28001, vyw29001, ty_Double) → new_esEs12(vyw28001, vyw29001)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(app(ty_Either, bdf), bdg)) → new_ltEs7(vyw28000, vyw29000, bdf, bdg)
new_esEs15(@0, @0) → True
new_lt17(vyw28000, vyw29000) → new_esEs14(new_compare18(vyw28000, vyw29000), LT)
new_esEs13(:%(vyw300, vyw301), :%(vyw4000, vyw4001), dbc) → new_asAs(new_esEs27(vyw300, vyw4000, dbc), new_esEs28(vyw301, vyw4001, dbc))
new_asAs(False, vyw91) → False
new_esEs22(vyw300, vyw4000, ty_Double) → new_esEs12(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Integer) → new_ltEs18(vyw28000, vyw29000)
new_primMulInt(Pos(vyw3010), Neg(vyw40010)) → Neg(new_primMulNat0(vyw3010, vyw40010))
new_primMulInt(Neg(vyw3010), Pos(vyw40010)) → Neg(new_primMulNat0(vyw3010, vyw40010))
new_esEs6(Just(vyw300), Just(vyw4000), app(ty_[], cfg)) → new_esEs11(vyw300, vyw4000, cfg)
new_esEs22(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_primMulNat0(Succ(vyw30100), Zero) → Zero
new_primMulNat0(Zero, Succ(vyw400100)) → Zero
new_esEs21(vyw302, vyw4002, app(app(ty_Either, hh), baa)) → new_esEs5(vyw302, vyw4002, hh, baa)
new_esEs6(Just(vyw300), Just(vyw4000), app(ty_Maybe, cfd)) → new_esEs6(vyw300, vyw4000, cfd)
new_esEs19(vyw300, vyw4000, app(ty_[], fb)) → new_esEs11(vyw300, vyw4000, fb)
new_esEs23(vyw28000, vyw29000, ty_Int) → new_esEs9(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, ty_Char) → new_esEs17(vyw30, vyw400)
new_esEs30(vyw18, vyw13, app(ty_Ratio, ccf)) → new_esEs13(vyw18, vyw13, ccf)
new_esEs27(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, ty_Float) → new_esEs16(vyw301, vyw4001)
new_esEs18(Integer(vyw300), Integer(vyw4000)) → new_primEqInt(vyw300, vyw4000)
new_esEs6(Just(vyw300), Just(vyw4000), app(app(ty_@2, cfe), cff)) → new_esEs4(vyw300, vyw4000, cfe, cff)
new_lt19(vyw28001, vyw29001, app(ty_Maybe, cah)) → new_lt12(vyw28001, vyw29001, cah)
new_esEs23(vyw28000, vyw29000, app(ty_Maybe, bhf)) → new_esEs6(vyw28000, vyw29000, bhf)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Float, bcb) → new_ltEs16(vyw28000, vyw29000)
new_lt4(vyw28000, vyw29000, app(app(app(ty_@3, ce), cf), cg)) → new_lt14(vyw28000, vyw29000, ce, cf, cg)
new_esEs8(vyw28000, vyw29000, ty_Bool) → new_esEs10(vyw28000, vyw29000)
new_ltEs12(Nothing, Just(vyw29000), bfa) → True
new_ltEs7(Left(vyw28000), Left(vyw29000), app(ty_Maybe, bcg), bcb) → new_ltEs12(vyw28000, vyw29000, bcg)
new_esEs14(GT, GT) → True
new_esEs8(vyw28000, vyw29000, ty_Ordering) → new_esEs14(vyw28000, vyw29000)
new_esEs20(vyw301, vyw4001, app(app(ty_@2, gc), gd)) → new_esEs4(vyw301, vyw4001, gc, gd)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(app(app(ty_@3, bch), bda), bdb), bcb) → new_ltEs14(vyw28000, vyw29000, bch, bda, bdb)
new_esEs30(vyw18, vyw13, app(app(ty_Either, cdc), cdd)) → new_esEs5(vyw18, vyw13, cdc, cdd)
new_esEs23(vyw28000, vyw29000, ty_Bool) → new_esEs10(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), ty_@0, cge) → new_esEs15(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Ordering) → new_ltEs13(vyw28000, vyw29000)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(ty_Maybe, dab)) → new_esEs6(vyw300, vyw4000, dab)
new_esEs22(vyw300, vyw4000, ty_Float) → new_esEs16(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(app(app(ty_@3, ceg), ceh), cfa)) → new_ltEs14(vyw28000, vyw29000, ceg, ceh, cfa)
new_esEs25(vyw300, vyw4000, app(app(app(ty_@3, dce), dcf), dcg)) → new_esEs7(vyw300, vyw4000, dce, dcf, dcg)
new_ltEs20(vyw28002, vyw29002, app(app(ty_Either, cbf), cbg)) → new_ltEs7(vyw28002, vyw29002, cbf, cbg)
new_compare12(:%(vyw28000, vyw28001), :%(vyw29000, vyw29001), ty_Int) → new_compare8(new_sr(vyw28000, vyw29001), new_sr(vyw29000, vyw28001))
new_compare25(Just(vyw2800), Just(vyw2900), False, beg) → new_compare112(vyw2800, vyw2900, new_ltEs19(vyw2800, vyw2900, beg), beg)
new_esEs30(vyw18, vyw13, ty_Bool) → new_esEs10(vyw18, vyw13)
new_esEs26(vyw301, vyw4001, ty_Integer) → new_esEs18(vyw301, vyw4001)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Char) → new_ltEs17(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), app(app(ty_Either, chc), chd), cge) → new_esEs5(vyw300, vyw4000, chc, chd)
new_compare18(Char(vyw28000), Char(vyw29000)) → new_primCmpNat0(vyw28000, vyw29000)
new_ltEs5(vyw28001, vyw29001, ty_Double) → new_ltEs10(vyw28001, vyw29001)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Float) → new_esEs16(vyw300, vyw4000)
new_esEs21(vyw302, vyw4002, ty_Double) → new_esEs12(vyw302, vyw4002)
new_esEs21(vyw302, vyw4002, app(ty_[], hg)) → new_esEs11(vyw302, vyw4002, hg)
new_esEs28(vyw301, vyw4001, ty_Int) → new_esEs9(vyw301, vyw4001)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Integer) → new_esEs18(vyw300, vyw4000)
new_compare112(vyw84, vyw85, False, bef) → GT
new_esEs30(vyw18, vyw13, ty_Char) → new_esEs17(vyw18, vyw13)
new_ltEs13(LT, LT) → True
new_esEs23(vyw28000, vyw29000, ty_Double) → new_esEs12(vyw28000, vyw29000)
new_esEs20(vyw301, vyw4001, ty_Char) → new_esEs17(vyw301, vyw4001)
new_compare26(vyw28000, vyw29000, True, ce, cf, cg) → EQ
new_esEs6(Just(vyw300), Just(vyw4000), ty_@0) → new_esEs15(vyw300, vyw4000)
new_lt7(vyw28000, vyw29000, bh, ca) → new_esEs14(new_compare9(vyw28000, vyw29000, bh, ca), LT)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Integer, bcb) → new_ltEs18(vyw28000, vyw29000)
new_compare0([], :(vyw29000, vyw29001), bae) → LT
new_primPlusNat1(Zero, Zero) → Zero
new_ltEs5(vyw28001, vyw29001, app(app(ty_Either, dc), dd)) → new_ltEs7(vyw28001, vyw29001, dc, dd)
new_esEs24(vyw28001, vyw29001, ty_Float) → new_esEs16(vyw28001, vyw29001)
new_asAs(True, vyw91) → vyw91
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Double) → new_esEs12(vyw300, vyw4000)
new_ltEs5(vyw28001, vyw29001, ty_Float) → new_ltEs16(vyw28001, vyw29001)
new_primMulNat0(Succ(vyw30100), Succ(vyw400100)) → new_primPlusNat0(new_primMulNat0(vyw30100, Succ(vyw400100)), vyw400100)
new_ltEs5(vyw28001, vyw29001, ty_Integer) → new_ltEs18(vyw28001, vyw29001)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Ordering) → new_ltEs13(vyw28000, vyw29000)
new_esEs10(False, True) → False
new_esEs10(True, False) → False
new_esEs14(LT, LT) → True
new_ltEs12(Just(vyw28000), Nothing, bfa) → False
new_lt16(vyw28000, vyw29000) → new_esEs14(new_compare17(vyw28000, vyw29000), LT)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Float, cge) → new_esEs16(vyw300, vyw4000)
new_esEs29(vyw30, vyw400, ty_Integer) → new_esEs18(vyw30, vyw400)
new_esEs20(vyw301, vyw4001, ty_Integer) → new_esEs18(vyw301, vyw4001)
new_compare6(vyw28000, vyw29000, app(ty_Maybe, bbd)) → new_compare13(vyw28000, vyw29000, bbd)
new_esEs25(vyw300, vyw4000, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Float) → new_ltEs16(vyw28000, vyw29000)
new_esEs9(vyw30, vyw400) → new_primEqInt(vyw30, vyw400)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Bool, bcb) → new_ltEs8(vyw28000, vyw29000)
new_esEs24(vyw28001, vyw29001, app(ty_Maybe, cah)) → new_esEs6(vyw28001, vyw29001, cah)
new_esEs21(vyw302, vyw4002, ty_Bool) → new_esEs10(vyw302, vyw4002)
new_ltEs20(vyw28002, vyw29002, ty_Int) → new_ltEs6(vyw28002, vyw29002)
new_lt10(vyw28000, vyw29000) → new_esEs14(new_compare11(vyw28000, vyw29000), LT)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Integer) → new_ltEs18(vyw28000, vyw29000)
new_esEs19(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_ltEs5(vyw28001, vyw29001, ty_@0) → new_ltEs15(vyw28001, vyw29001)
new_esEs22(vyw300, vyw4000, app(app(ty_Either, bgc), bgd)) → new_esEs5(vyw300, vyw4000, bgc, bgd)
new_lt20(vyw28000, vyw29000, ty_Double) → new_lt10(vyw28000, vyw29000)
new_primCompAux00(vyw109, GT) → GT
new_esEs21(vyw302, vyw4002, ty_Float) → new_esEs16(vyw302, vyw4002)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_esEs19(vyw300, vyw4000, app(app(ty_@2, eh), fa)) → new_esEs4(vyw300, vyw4000, eh, fa)
new_ltEs10(vyw2800, vyw2900) → new_not(new_esEs14(new_compare11(vyw2800, vyw2900), GT))
new_lt20(vyw28000, vyw29000, app(ty_Maybe, bhf)) → new_lt12(vyw28000, vyw29000, bhf)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(ty_Ratio, daa)) → new_esEs13(vyw300, vyw4000, daa)
new_ltEs20(vyw28002, vyw29002, ty_Char) → new_ltEs17(vyw28002, vyw29002)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_esEs30(vyw18, vyw13, app(app(ty_@2, cch), cda)) → new_esEs4(vyw18, vyw13, cch, cda)
new_primCmpInt(Neg(Succ(vyw280000)), Pos(vyw29000)) → LT
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Int) → new_ltEs6(vyw28000, vyw29000)
new_compare11(Double(vyw28000, vyw28001), Double(vyw29000, vyw29001)) → new_compare8(new_sr(vyw28000, vyw29000), new_sr(vyw28001, vyw29001))
new_compare15(vyw28000, vyw29000, ce, cf, cg) → new_compare26(vyw28000, vyw29000, new_esEs7(vyw28000, vyw29000, ce, cf, cg), ce, cf, cg)
new_not(True) → False
new_ltEs19(vyw2800, vyw2900, ty_Ordering) → new_ltEs13(vyw2800, vyw2900)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Char, cge) → new_esEs17(vyw300, vyw4000)
new_ltEs4(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), bd, be) → new_pePe(new_lt4(vyw28000, vyw29000, bd), new_asAs(new_esEs8(vyw28000, vyw29000, bd), new_ltEs5(vyw28001, vyw29001, be)))
new_compare6(vyw28000, vyw29000, app(app(ty_@2, baf), bag)) → new_compare7(vyw28000, vyw29000, baf, bag)
The set Q consists of the following terms:
new_compare6(x0, x1, app(app(ty_@2, x2), x3))
new_pePe(True, x0)
new_ltEs7(Left(x0), Left(x1), ty_Char, x2)
new_compare114(x0, x1, True, x2, x3)
new_esEs21(x0, x1, ty_Integer)
new_ltEs19(x0, x1, app(ty_[], x2))
new_compare6(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_@0)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_esEs25(x0, x1, ty_Integer)
new_esEs23(x0, x1, ty_Ordering)
new_esEs22(x0, x1, ty_Char)
new_esEs5(Right(x0), Right(x1), x2, ty_Int)
new_esEs14(EQ, GT)
new_esEs14(GT, EQ)
new_compare24(x0, x1, True, x2, x3)
new_ltEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs21(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_Float)
new_ltEs12(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs5(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_primPlusNat1(Succ(x0), Succ(x1))
new_compare6(x0, x1, ty_Float)
new_esEs24(x0, x1, ty_Char)
new_ltEs15(x0, x1)
new_pePe(False, x0)
new_esEs8(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs25(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, ty_Integer)
new_lt4(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, ty_Float)
new_esEs26(x0, x1, ty_Float)
new_compare110(x0, x1, False, x2, x3)
new_esEs23(x0, x1, ty_Double)
new_esEs24(x0, x1, ty_Bool)
new_esEs9(x0, x1)
new_esEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Int)
new_compare25(Just(x0), Just(x1), False, x2)
new_esEs28(x0, x1, ty_Integer)
new_esEs30(x0, x1, ty_Char)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Zero)
new_ltEs12(Just(x0), Nothing, x1)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, app(ty_Maybe, x2))
new_esEs22(x0, x1, ty_Ordering)
new_esEs5(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_compare6(x0, x1, ty_Double)
new_ltEs18(x0, x1)
new_compare12(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs25(x0, x1, ty_Float)
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_lt9(x0, x1, x2)
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs21(x0, x1, ty_@0)
new_esEs24(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs8(True, True)
new_primCmpNat0(Succ(x0), Succ(x1))
new_ltEs19(x0, x1, ty_Int)
new_esEs6(Just(x0), Just(x1), app(ty_[], x2))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_compare6(x0, x1, ty_Ordering)
new_esEs6(Just(x0), Nothing, x1)
new_lt20(x0, x1, ty_Char)
new_compare13(x0, x1, x2)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_esEs5(Right(x0), Right(x1), x2, ty_Ordering)
new_compare12(:%(x0, x1), :%(x2, x3), ty_Int)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(Just(x0), Just(x1), ty_Char)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare28(x0, x1, True)
new_ltEs12(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs11([], :(x0, x1), x2)
new_ltEs12(Just(x0), Just(x1), ty_@0)
new_esEs14(LT, GT)
new_esEs14(GT, LT)
new_lt19(x0, x1, ty_Integer)
new_esEs29(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_asAs(True, x0)
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_ltEs12(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs12(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Double)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_primEqNat0(Zero, Zero)
new_esEs25(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs21(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, False)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(EQ, EQ)
new_lt20(x0, x1, app(ty_[], x2))
new_ltEs7(Right(x0), Right(x1), x2, ty_Double)
new_lt19(x0, x1, app(ty_[], x2))
new_esEs19(x0, x1, ty_Bool)
new_compare6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs27(x0, x1, ty_Int)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, ty_Integer)
new_esEs23(x0, x1, ty_@0)
new_ltEs10(x0, x1)
new_lt8(x0, x1)
new_primMulNat0(Zero, Zero)
new_lt13(x0, x1)
new_compare113(x0, x1, True)
new_esEs29(x0, x1, ty_Int)
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_esEs10(False, True)
new_esEs10(True, False)
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1, x2, x3)
new_esEs5(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primMulNat0(Zero, Succ(x0))
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs22(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_Int)
new_esEs6(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs5(Right(x0), Right(x1), x2, ty_Float)
new_ltEs13(LT, EQ)
new_ltEs13(EQ, LT)
new_primPlusNat0(Succ(x0), x1)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs5(Left(x0), Left(x1), ty_Integer, x2)
new_esEs19(x0, x1, ty_Integer)
new_esEs22(x0, x1, ty_Int)
new_ltEs19(x0, x1, ty_Integer)
new_esEs19(x0, x1, ty_Ordering)
new_ltEs12(Just(x0), Just(x1), ty_Bool)
new_esEs26(x0, x1, ty_@0)
new_esEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_compare15(x0, x1, x2, x3, x4)
new_ltEs9(x0, x1, x2)
new_sr(x0, x1)
new_primCmpNat0(Zero, Succ(x0))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs30(x0, x1, ty_Double)
new_esEs24(x0, x1, app(ty_[], x2))
new_lt4(x0, x1, ty_Double)
new_primEqNat0(Zero, Succ(x0))
new_esEs23(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_@0)
new_asAs(False, x0)
new_esEs24(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Integer)
new_compare0(:(x0, x1), [], x2)
new_ltEs6(x0, x1)
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_primMulInt(Pos(x0), Pos(x1))
new_esEs24(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Char)
new_compare27(x0, x1, True, x2, x3)
new_esEs20(x0, x1, ty_@0)
new_esEs6(Nothing, Nothing, x0)
new_compare28(x0, x1, False)
new_esEs22(x0, x1, ty_@0)
new_esEs6(Just(x0), Just(x1), ty_Bool)
new_lt4(x0, x1, ty_Int)
new_ltEs7(Left(x0), Right(x1), x2, x3)
new_ltEs7(Right(x0), Left(x1), x2, x3)
new_compare26(x0, x1, True, x2, x3, x4)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_compare16(@0, @0)
new_esEs5(Right(x0), Right(x1), x2, ty_Char)
new_ltEs19(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(Double(x0, x1), Double(x2, x3))
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare17(Float(x0, x1), Float(x2, x3))
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs23(x0, x1, ty_Float)
new_esEs6(Just(x0), Just(x1), ty_@0)
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs12(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Integer)
new_ltEs14(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs14(LT, LT)
new_esEs10(True, True)
new_esEs24(x0, x1, ty_Float)
new_esEs5(Left(x0), Left(x1), ty_Ordering, x2)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs19(x0, x1, ty_Int)
new_esEs22(x0, x1, ty_Double)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(ty_[], x2))
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs30(x0, x1, ty_Int)
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_lt19(x0, x1, ty_@0)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_compare113(x0, x1, False)
new_compare6(x0, x1, ty_Integer)
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs5(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11([], [], x0)
new_esEs8(x0, x1, ty_@0)
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs6(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_primCompAux0(x0, x1, x2, x3)
new_esEs5(Right(x0), Right(x1), x2, ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_lt19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_compare10(x0, x1)
new_esEs22(x0, x1, ty_Bool)
new_esEs27(x0, x1, ty_Integer)
new_ltEs7(Left(x0), Left(x1), ty_Int, x2)
new_esEs29(x0, x1, ty_Float)
new_esEs8(x0, x1, ty_Double)
new_lt20(x0, x1, ty_Integer)
new_ltEs13(EQ, GT)
new_ltEs13(GT, EQ)
new_esEs26(x0, x1, ty_Double)
new_esEs6(Just(x0), Just(x1), ty_Float)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_ltEs7(Left(x0), Left(x1), ty_Float, x2)
new_lt12(x0, x1, x2)
new_esEs11(:(x0, x1), :(x2, x3), x4)
new_esEs5(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs7(Left(x0), Left(x1), ty_Double, x2)
new_ltEs8(False, False)
new_lt20(x0, x1, ty_Double)
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_esEs21(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_ltEs19(x0, x1, ty_Float)
new_ltEs7(Right(x0), Right(x1), x2, ty_Float)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs8(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs8(x0, x1, ty_Float)
new_esEs23(x0, x1, app(ty_[], x2))
new_ltEs8(False, True)
new_ltEs8(True, False)
new_ltEs12(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs7(Right(x0), Right(x1), x2, ty_Char)
new_lt4(x0, x1, ty_Bool)
new_compare115(x0, x1, True, x2, x3, x4)
new_ltEs12(Just(x0), Just(x1), ty_Int)
new_compare19(Integer(x0), Integer(x1))
new_esEs25(x0, x1, ty_Char)
new_compare9(x0, x1, x2, x3)
new_lt18(x0, x1)
new_ltEs13(LT, GT)
new_ltEs13(GT, LT)
new_primCompAux00(x0, EQ)
new_esEs21(x0, x1, ty_Double)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs6(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_primEqInt(Neg(Zero), Neg(Zero))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_sr0(Integer(x0), Integer(x1))
new_compare110(x0, x1, True, x2, x3)
new_ltEs19(x0, x1, ty_Char)
new_lt4(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_Double)
new_compare18(Char(x0), Char(x1))
new_esEs8(x0, x1, ty_Bool)
new_ltEs5(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), ty_Ordering)
new_esEs20(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), ty_Integer)
new_compare8(x0, x1)
new_compare7(x0, x1, x2, x3)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs12(Just(x0), Just(x1), ty_Float)
new_ltEs19(x0, x1, ty_@0)
new_compare0([], :(x0, x1), x2)
new_ltEs7(Left(x0), Left(x1), ty_Integer, x2)
new_primCompAux00(x0, LT)
new_esEs5(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_lt17(x0, x1)
new_lt4(x0, x1, app(app(ty_@2, x2), x3))
new_esEs5(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs18(Integer(x0), Integer(x1))
new_lt20(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_lt4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs21(x0, x1, app(ty_[], x2))
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs17(Char(x0), Char(x1))
new_esEs19(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_compare26(x0, x1, False, x2, x3, x4)
new_esEs19(x0, x1, app(ty_[], x2))
new_lt6(x0, x1)
new_lt19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Bool)
new_lt4(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(Right(x0), Right(x1), x2, app(ty_[], x3))
new_lt19(x0, x1, ty_Ordering)
new_esEs23(x0, x1, ty_Int)
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs5(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs7(Left(x0), Left(x1), ty_@0, x2)
new_esEs5(Left(x0), Right(x1), x2, x3)
new_esEs5(Right(x0), Left(x1), x2, x3)
new_lt19(x0, x1, ty_Char)
new_esEs21(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, ty_Ordering)
new_ltEs7(Right(x0), Right(x1), x2, ty_Bool)
new_esEs23(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(Nothing, Just(x0), x1)
new_primCmpNat0(Zero, Zero)
new_esEs6(Just(x0), Just(x1), app(ty_Maybe, x2))
new_lt4(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Bool, x2)
new_esEs10(False, False)
new_compare112(x0, x1, True, x2)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, ty_Char)
new_primPlusNat1(Zero, Succ(x0))
new_lt20(x0, x1, ty_Int)
new_ltEs13(LT, LT)
new_esEs5(Left(x0), Left(x1), ty_Int, x2)
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_lt19(x0, x1, ty_Bool)
new_esEs15(@0, @0)
new_esEs5(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs30(x0, x1, ty_Ordering)
new_esEs22(x0, x1, ty_Integer)
new_esEs29(x0, x1, ty_Char)
new_compare6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Just(x0), Just(x1), ty_Char)
new_esEs6(Just(x0), Just(x1), ty_Double)
new_esEs30(x0, x1, ty_Float)
new_compare24(x0, x1, False, x2, x3)
new_ltEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs12(Nothing, Nothing, x0)
new_esEs25(x0, x1, ty_Bool)
new_primCmpNat0(Succ(x0), Zero)
new_compare6(x0, x1, app(ty_Maybe, x2))
new_ltEs12(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_compare25(Just(x0), Nothing, False, x1)
new_esEs5(Right(x0), Right(x1), x2, ty_Integer)
new_lt19(x0, x1, ty_Double)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(GT, GT)
new_ltEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs16(Float(x0, x1), Float(x2, x3))
new_esEs11(:(x0, x1), [], x2)
new_lt14(x0, x1, x2, x3, x4)
new_esEs24(x0, x1, ty_@0)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_lt11(x0, x1, x2)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_@0)
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(x0, x1)
new_not(True)
new_lt19(x0, x1, ty_Float)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_compare23(x0, x1, False)
new_ltEs11(x0, x1, x2)
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_lt4(x0, x1, ty_Ordering)
new_compare27(x0, x1, False, x2, x3)
new_esEs20(x0, x1, app(ty_[], x2))
new_esEs24(x0, x1, ty_Ordering)
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, ty_@0)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_primCompAux00(x0, GT)
new_esEs23(x0, x1, ty_Integer)
new_lt15(x0, x1)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_esEs25(x0, x1, app(ty_[], x2))
new_esEs8(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Double)
new_esEs25(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, True)
new_compare6(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Double, x2)
new_ltEs17(x0, x1)
new_lt7(x0, x1, x2, x3)
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Nothing, Just(x0), x1)
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Just(x0), Just(x1), ty_Integer)
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_esEs14(EQ, LT)
new_esEs14(LT, EQ)
new_esEs22(x0, x1, app(ty_[], x2))
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_compare6(x0, x1, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Float, x2)
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Ordering)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_esEs5(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_compare23(x0, x1, True)
new_compare115(x0, x1, False, x2, x3, x4)
new_esEs5(Left(x0), Left(x1), ty_@0, x2)
new_esEs14(GT, GT)
new_ltEs16(x0, x1)
new_compare25(x0, x1, True, x2)
new_esEs19(x0, x1, ty_@0)
new_esEs6(Just(x0), Just(x1), ty_Int)
new_esEs19(x0, x1, ty_Float)
new_lt4(x0, x1, ty_Float)
new_compare11(Double(x0, x1), Double(x2, x3))
new_esEs20(x0, x1, ty_Char)
new_esEs7(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt19(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Char)
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_compare114(x0, x1, False, x2, x3)
new_esEs25(x0, x1, ty_Double)
new_compare6(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs14(EQ, EQ)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_compare6(x0, x1, app(ty_Ratio, x2))
new_compare25(Nothing, Just(x0), False, x1)
new_compare6(x0, x1, ty_@0)
new_lt19(x0, x1, app(ty_Ratio, x2))
new_ltEs12(Just(x0), Just(x1), ty_Ordering)
new_esEs20(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_primEqNat0(Succ(x0), Succ(x1))
new_primEqInt(Pos(Zero), Pos(Zero))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_lt19(x0, x1, ty_Int)
new_compare112(x0, x1, False, x2)
new_ltEs7(Left(x0), Left(x1), ty_Bool, x2)
new_esEs5(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Ordering)
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_compare25(Nothing, Nothing, False, x0)
new_lt16(x0, x1)
new_esEs21(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare0(:(x0, x1), :(x2, x3), x4)
new_esEs5(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_ltEs5(x0, x1, ty_@0)
new_esEs5(Right(x0), Right(x1), x2, ty_@0)
new_primMulNat0(Succ(x0), Zero)
new_compare0([], [], x0)
new_primPlusNat0(Zero, x0)
new_esEs5(Right(x0), Right(x1), x2, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_lt10(x0, x1)
new_ltEs7(Right(x0), Right(x1), x2, ty_@0)
new_ltEs20(x0, x1, ty_Float)
We have to consider all minimal (P,Q,R)-chains.
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [15] we can delete all non-usable rules [17] from R.
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, False, h, ba) → new_elemFM04(vyw400, vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Just(vyw400), False, ba), GT), h, ba)
new_elemFM00(Branch(Just(vyw400), vyw41, vyw42, vyw43, vyw44), Nothing, h, ba) → new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Just(vyw400), False, ba), LT), h, ba)
new_elemFM04(vyw400, vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw44, Nothing, h, ba)
new_elemFM00(Branch(Nothing, vyw41, vyw42, vyw43, vyw44), Nothing, h, ba) → new_elemFM0(vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Nothing, True, ba), GT), h, ba)
new_elemFM0(vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw44, Nothing, h, ba)
new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw43, Nothing, h, ba)
The TRS R consists of the following rules:
new_compare25(Nothing, Just(vyw2900), False, beg) → LT
new_esEs14(LT, GT) → False
new_esEs14(EQ, GT) → False
new_esEs14(GT, GT) → True
new_compare25(vyw280, vyw290, True, beg) → EQ
new_esEs14(GT, LT) → False
new_esEs14(EQ, LT) → False
new_esEs14(LT, LT) → True
The set Q consists of the following terms:
new_compare6(x0, x1, app(app(ty_@2, x2), x3))
new_pePe(True, x0)
new_ltEs7(Left(x0), Left(x1), ty_Char, x2)
new_compare114(x0, x1, True, x2, x3)
new_esEs21(x0, x1, ty_Integer)
new_ltEs19(x0, x1, app(ty_[], x2))
new_compare6(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_@0)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_esEs25(x0, x1, ty_Integer)
new_esEs23(x0, x1, ty_Ordering)
new_esEs22(x0, x1, ty_Char)
new_esEs5(Right(x0), Right(x1), x2, ty_Int)
new_esEs14(EQ, GT)
new_esEs14(GT, EQ)
new_compare24(x0, x1, True, x2, x3)
new_ltEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs21(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_Float)
new_ltEs12(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs5(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_primPlusNat1(Succ(x0), Succ(x1))
new_compare6(x0, x1, ty_Float)
new_esEs24(x0, x1, ty_Char)
new_ltEs15(x0, x1)
new_pePe(False, x0)
new_esEs8(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs25(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, ty_Integer)
new_lt4(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, ty_Float)
new_esEs26(x0, x1, ty_Float)
new_compare110(x0, x1, False, x2, x3)
new_esEs23(x0, x1, ty_Double)
new_esEs24(x0, x1, ty_Bool)
new_esEs9(x0, x1)
new_esEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Int)
new_compare25(Just(x0), Just(x1), False, x2)
new_esEs28(x0, x1, ty_Integer)
new_esEs30(x0, x1, ty_Char)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Zero)
new_ltEs12(Just(x0), Nothing, x1)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, app(ty_Maybe, x2))
new_esEs22(x0, x1, ty_Ordering)
new_esEs5(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_compare6(x0, x1, ty_Double)
new_ltEs18(x0, x1)
new_compare12(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs25(x0, x1, ty_Float)
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_lt9(x0, x1, x2)
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs21(x0, x1, ty_@0)
new_esEs24(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs8(True, True)
new_primCmpNat0(Succ(x0), Succ(x1))
new_ltEs19(x0, x1, ty_Int)
new_esEs6(Just(x0), Just(x1), app(ty_[], x2))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_compare6(x0, x1, ty_Ordering)
new_esEs6(Just(x0), Nothing, x1)
new_lt20(x0, x1, ty_Char)
new_compare13(x0, x1, x2)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_esEs5(Right(x0), Right(x1), x2, ty_Ordering)
new_compare12(:%(x0, x1), :%(x2, x3), ty_Int)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(Just(x0), Just(x1), ty_Char)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare28(x0, x1, True)
new_ltEs12(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs11([], :(x0, x1), x2)
new_ltEs12(Just(x0), Just(x1), ty_@0)
new_esEs14(LT, GT)
new_esEs14(GT, LT)
new_lt19(x0, x1, ty_Integer)
new_esEs29(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_asAs(True, x0)
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_ltEs12(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs12(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Double)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_primEqNat0(Zero, Zero)
new_esEs25(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs21(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, False)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(EQ, EQ)
new_lt20(x0, x1, app(ty_[], x2))
new_ltEs7(Right(x0), Right(x1), x2, ty_Double)
new_lt19(x0, x1, app(ty_[], x2))
new_esEs19(x0, x1, ty_Bool)
new_compare6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs27(x0, x1, ty_Int)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, ty_Integer)
new_esEs23(x0, x1, ty_@0)
new_ltEs10(x0, x1)
new_lt8(x0, x1)
new_primMulNat0(Zero, Zero)
new_lt13(x0, x1)
new_compare113(x0, x1, True)
new_esEs29(x0, x1, ty_Int)
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_esEs10(False, True)
new_esEs10(True, False)
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1, x2, x3)
new_esEs5(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primMulNat0(Zero, Succ(x0))
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs22(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_Int)
new_esEs6(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs5(Right(x0), Right(x1), x2, ty_Float)
new_ltEs13(LT, EQ)
new_ltEs13(EQ, LT)
new_primPlusNat0(Succ(x0), x1)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs5(Left(x0), Left(x1), ty_Integer, x2)
new_esEs19(x0, x1, ty_Integer)
new_esEs22(x0, x1, ty_Int)
new_ltEs19(x0, x1, ty_Integer)
new_esEs19(x0, x1, ty_Ordering)
new_ltEs12(Just(x0), Just(x1), ty_Bool)
new_esEs26(x0, x1, ty_@0)
new_esEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_compare15(x0, x1, x2, x3, x4)
new_ltEs9(x0, x1, x2)
new_sr(x0, x1)
new_primCmpNat0(Zero, Succ(x0))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs30(x0, x1, ty_Double)
new_esEs24(x0, x1, app(ty_[], x2))
new_lt4(x0, x1, ty_Double)
new_primEqNat0(Zero, Succ(x0))
new_esEs23(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_@0)
new_asAs(False, x0)
new_esEs24(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Integer)
new_compare0(:(x0, x1), [], x2)
new_ltEs6(x0, x1)
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_primMulInt(Pos(x0), Pos(x1))
new_esEs24(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Char)
new_compare27(x0, x1, True, x2, x3)
new_esEs20(x0, x1, ty_@0)
new_esEs6(Nothing, Nothing, x0)
new_compare28(x0, x1, False)
new_esEs22(x0, x1, ty_@0)
new_esEs6(Just(x0), Just(x1), ty_Bool)
new_lt4(x0, x1, ty_Int)
new_ltEs7(Left(x0), Right(x1), x2, x3)
new_ltEs7(Right(x0), Left(x1), x2, x3)
new_compare26(x0, x1, True, x2, x3, x4)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_compare16(@0, @0)
new_esEs5(Right(x0), Right(x1), x2, ty_Char)
new_ltEs19(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(Double(x0, x1), Double(x2, x3))
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare17(Float(x0, x1), Float(x2, x3))
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs23(x0, x1, ty_Float)
new_esEs6(Just(x0), Just(x1), ty_@0)
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs12(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Integer)
new_ltEs14(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs14(LT, LT)
new_esEs10(True, True)
new_esEs24(x0, x1, ty_Float)
new_esEs5(Left(x0), Left(x1), ty_Ordering, x2)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs19(x0, x1, ty_Int)
new_esEs22(x0, x1, ty_Double)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(ty_[], x2))
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs30(x0, x1, ty_Int)
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_lt19(x0, x1, ty_@0)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_compare113(x0, x1, False)
new_compare6(x0, x1, ty_Integer)
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs5(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11([], [], x0)
new_esEs8(x0, x1, ty_@0)
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs6(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_primCompAux0(x0, x1, x2, x3)
new_esEs5(Right(x0), Right(x1), x2, ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_lt19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_compare10(x0, x1)
new_esEs22(x0, x1, ty_Bool)
new_esEs27(x0, x1, ty_Integer)
new_ltEs7(Left(x0), Left(x1), ty_Int, x2)
new_esEs29(x0, x1, ty_Float)
new_esEs8(x0, x1, ty_Double)
new_lt20(x0, x1, ty_Integer)
new_ltEs13(EQ, GT)
new_ltEs13(GT, EQ)
new_esEs26(x0, x1, ty_Double)
new_esEs6(Just(x0), Just(x1), ty_Float)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_ltEs7(Left(x0), Left(x1), ty_Float, x2)
new_lt12(x0, x1, x2)
new_esEs11(:(x0, x1), :(x2, x3), x4)
new_esEs5(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs7(Left(x0), Left(x1), ty_Double, x2)
new_ltEs8(False, False)
new_lt20(x0, x1, ty_Double)
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_esEs21(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_ltEs19(x0, x1, ty_Float)
new_ltEs7(Right(x0), Right(x1), x2, ty_Float)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs8(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs8(x0, x1, ty_Float)
new_esEs23(x0, x1, app(ty_[], x2))
new_ltEs8(False, True)
new_ltEs8(True, False)
new_ltEs12(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs7(Right(x0), Right(x1), x2, ty_Char)
new_lt4(x0, x1, ty_Bool)
new_compare115(x0, x1, True, x2, x3, x4)
new_ltEs12(Just(x0), Just(x1), ty_Int)
new_compare19(Integer(x0), Integer(x1))
new_esEs25(x0, x1, ty_Char)
new_compare9(x0, x1, x2, x3)
new_lt18(x0, x1)
new_ltEs13(LT, GT)
new_ltEs13(GT, LT)
new_primCompAux00(x0, EQ)
new_esEs21(x0, x1, ty_Double)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs6(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_primEqInt(Neg(Zero), Neg(Zero))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_sr0(Integer(x0), Integer(x1))
new_compare110(x0, x1, True, x2, x3)
new_ltEs19(x0, x1, ty_Char)
new_lt4(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_Double)
new_compare18(Char(x0), Char(x1))
new_esEs8(x0, x1, ty_Bool)
new_ltEs5(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), ty_Ordering)
new_esEs20(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), ty_Integer)
new_compare8(x0, x1)
new_compare7(x0, x1, x2, x3)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs12(Just(x0), Just(x1), ty_Float)
new_ltEs19(x0, x1, ty_@0)
new_compare0([], :(x0, x1), x2)
new_ltEs7(Left(x0), Left(x1), ty_Integer, x2)
new_primCompAux00(x0, LT)
new_esEs5(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_lt17(x0, x1)
new_lt4(x0, x1, app(app(ty_@2, x2), x3))
new_esEs5(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs18(Integer(x0), Integer(x1))
new_lt20(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_lt4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs21(x0, x1, app(ty_[], x2))
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs17(Char(x0), Char(x1))
new_esEs19(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_compare26(x0, x1, False, x2, x3, x4)
new_esEs19(x0, x1, app(ty_[], x2))
new_lt6(x0, x1)
new_lt19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Bool)
new_lt4(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(Right(x0), Right(x1), x2, app(ty_[], x3))
new_lt19(x0, x1, ty_Ordering)
new_esEs23(x0, x1, ty_Int)
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs5(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs7(Left(x0), Left(x1), ty_@0, x2)
new_esEs5(Left(x0), Right(x1), x2, x3)
new_esEs5(Right(x0), Left(x1), x2, x3)
new_lt19(x0, x1, ty_Char)
new_esEs21(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, ty_Ordering)
new_ltEs7(Right(x0), Right(x1), x2, ty_Bool)
new_esEs23(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(Nothing, Just(x0), x1)
new_primCmpNat0(Zero, Zero)
new_esEs6(Just(x0), Just(x1), app(ty_Maybe, x2))
new_lt4(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Bool, x2)
new_esEs10(False, False)
new_compare112(x0, x1, True, x2)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, ty_Char)
new_primPlusNat1(Zero, Succ(x0))
new_lt20(x0, x1, ty_Int)
new_ltEs13(LT, LT)
new_esEs5(Left(x0), Left(x1), ty_Int, x2)
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_lt19(x0, x1, ty_Bool)
new_esEs15(@0, @0)
new_esEs5(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs30(x0, x1, ty_Ordering)
new_esEs22(x0, x1, ty_Integer)
new_esEs29(x0, x1, ty_Char)
new_compare6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Just(x0), Just(x1), ty_Char)
new_esEs6(Just(x0), Just(x1), ty_Double)
new_esEs30(x0, x1, ty_Float)
new_compare24(x0, x1, False, x2, x3)
new_ltEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs12(Nothing, Nothing, x0)
new_esEs25(x0, x1, ty_Bool)
new_primCmpNat0(Succ(x0), Zero)
new_compare6(x0, x1, app(ty_Maybe, x2))
new_ltEs12(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_compare25(Just(x0), Nothing, False, x1)
new_esEs5(Right(x0), Right(x1), x2, ty_Integer)
new_lt19(x0, x1, ty_Double)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(GT, GT)
new_ltEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs16(Float(x0, x1), Float(x2, x3))
new_esEs11(:(x0, x1), [], x2)
new_lt14(x0, x1, x2, x3, x4)
new_esEs24(x0, x1, ty_@0)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_lt11(x0, x1, x2)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_@0)
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(x0, x1)
new_not(True)
new_lt19(x0, x1, ty_Float)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_compare23(x0, x1, False)
new_ltEs11(x0, x1, x2)
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_lt4(x0, x1, ty_Ordering)
new_compare27(x0, x1, False, x2, x3)
new_esEs20(x0, x1, app(ty_[], x2))
new_esEs24(x0, x1, ty_Ordering)
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, ty_@0)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_primCompAux00(x0, GT)
new_esEs23(x0, x1, ty_Integer)
new_lt15(x0, x1)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_esEs25(x0, x1, app(ty_[], x2))
new_esEs8(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Double)
new_esEs25(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, True)
new_compare6(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Double, x2)
new_ltEs17(x0, x1)
new_lt7(x0, x1, x2, x3)
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Nothing, Just(x0), x1)
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Just(x0), Just(x1), ty_Integer)
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_esEs14(EQ, LT)
new_esEs14(LT, EQ)
new_esEs22(x0, x1, app(ty_[], x2))
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_compare6(x0, x1, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Float, x2)
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Ordering)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_esEs5(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_compare23(x0, x1, True)
new_compare115(x0, x1, False, x2, x3, x4)
new_esEs5(Left(x0), Left(x1), ty_@0, x2)
new_esEs14(GT, GT)
new_ltEs16(x0, x1)
new_compare25(x0, x1, True, x2)
new_esEs19(x0, x1, ty_@0)
new_esEs6(Just(x0), Just(x1), ty_Int)
new_esEs19(x0, x1, ty_Float)
new_lt4(x0, x1, ty_Float)
new_compare11(Double(x0, x1), Double(x2, x3))
new_esEs20(x0, x1, ty_Char)
new_esEs7(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt19(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Char)
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_compare114(x0, x1, False, x2, x3)
new_esEs25(x0, x1, ty_Double)
new_compare6(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs14(EQ, EQ)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_compare6(x0, x1, app(ty_Ratio, x2))
new_compare25(Nothing, Just(x0), False, x1)
new_compare6(x0, x1, ty_@0)
new_lt19(x0, x1, app(ty_Ratio, x2))
new_ltEs12(Just(x0), Just(x1), ty_Ordering)
new_esEs20(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_primEqNat0(Succ(x0), Succ(x1))
new_primEqInt(Pos(Zero), Pos(Zero))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_lt19(x0, x1, ty_Int)
new_compare112(x0, x1, False, x2)
new_ltEs7(Left(x0), Left(x1), ty_Bool, x2)
new_esEs5(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Ordering)
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_compare25(Nothing, Nothing, False, x0)
new_lt16(x0, x1)
new_esEs21(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare0(:(x0, x1), :(x2, x3), x4)
new_esEs5(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_ltEs5(x0, x1, ty_@0)
new_esEs5(Right(x0), Right(x1), x2, ty_@0)
new_primMulNat0(Succ(x0), Zero)
new_compare0([], [], x0)
new_primPlusNat0(Zero, x0)
new_esEs5(Right(x0), Right(x1), x2, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_lt10(x0, x1)
new_ltEs7(Right(x0), Right(x1), x2, ty_@0)
new_ltEs20(x0, x1, ty_Float)
We have to consider all minimal (P,Q,R)-chains.
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.
new_compare6(x0, x1, app(app(ty_@2, x2), x3))
new_pePe(True, x0)
new_ltEs7(Left(x0), Left(x1), ty_Char, x2)
new_compare114(x0, x1, True, x2, x3)
new_esEs21(x0, x1, ty_Integer)
new_ltEs19(x0, x1, app(ty_[], x2))
new_compare6(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_@0)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_esEs25(x0, x1, ty_Integer)
new_esEs23(x0, x1, ty_Ordering)
new_esEs22(x0, x1, ty_Char)
new_esEs5(Right(x0), Right(x1), x2, ty_Int)
new_compare24(x0, x1, True, x2, x3)
new_ltEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs21(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_Float)
new_ltEs12(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs5(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_primPlusNat1(Succ(x0), Succ(x1))
new_compare6(x0, x1, ty_Float)
new_esEs24(x0, x1, ty_Char)
new_ltEs15(x0, x1)
new_pePe(False, x0)
new_esEs8(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs25(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, ty_Integer)
new_lt4(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, ty_Float)
new_esEs26(x0, x1, ty_Float)
new_compare110(x0, x1, False, x2, x3)
new_esEs23(x0, x1, ty_Double)
new_esEs24(x0, x1, ty_Bool)
new_esEs9(x0, x1)
new_esEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Int)
new_esEs28(x0, x1, ty_Integer)
new_esEs30(x0, x1, ty_Char)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Zero)
new_ltEs12(Just(x0), Nothing, x1)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, app(ty_Maybe, x2))
new_esEs22(x0, x1, ty_Ordering)
new_esEs5(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_compare6(x0, x1, ty_Double)
new_ltEs18(x0, x1)
new_compare12(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs25(x0, x1, ty_Float)
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_lt9(x0, x1, x2)
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs21(x0, x1, ty_@0)
new_esEs24(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs8(True, True)
new_primCmpNat0(Succ(x0), Succ(x1))
new_ltEs19(x0, x1, ty_Int)
new_esEs6(Just(x0), Just(x1), app(ty_[], x2))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_compare6(x0, x1, ty_Ordering)
new_esEs6(Just(x0), Nothing, x1)
new_lt20(x0, x1, ty_Char)
new_compare13(x0, x1, x2)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_esEs5(Right(x0), Right(x1), x2, ty_Ordering)
new_compare12(:%(x0, x1), :%(x2, x3), ty_Int)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(Just(x0), Just(x1), ty_Char)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare28(x0, x1, True)
new_ltEs12(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs11([], :(x0, x1), x2)
new_ltEs12(Just(x0), Just(x1), ty_@0)
new_lt19(x0, x1, ty_Integer)
new_esEs29(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_asAs(True, x0)
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_ltEs12(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs12(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Double)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_primEqNat0(Zero, Zero)
new_esEs25(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs21(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, False)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(EQ, EQ)
new_lt20(x0, x1, app(ty_[], x2))
new_ltEs7(Right(x0), Right(x1), x2, ty_Double)
new_lt19(x0, x1, app(ty_[], x2))
new_esEs19(x0, x1, ty_Bool)
new_compare6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs27(x0, x1, ty_Int)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, ty_Integer)
new_esEs23(x0, x1, ty_@0)
new_ltEs10(x0, x1)
new_lt8(x0, x1)
new_primMulNat0(Zero, Zero)
new_lt13(x0, x1)
new_compare113(x0, x1, True)
new_esEs29(x0, x1, ty_Int)
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_esEs10(False, True)
new_esEs10(True, False)
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1, x2, x3)
new_esEs5(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primMulNat0(Zero, Succ(x0))
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs22(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_Int)
new_esEs6(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs5(Right(x0), Right(x1), x2, ty_Float)
new_ltEs13(LT, EQ)
new_ltEs13(EQ, LT)
new_primPlusNat0(Succ(x0), x1)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs5(Left(x0), Left(x1), ty_Integer, x2)
new_esEs19(x0, x1, ty_Integer)
new_esEs22(x0, x1, ty_Int)
new_ltEs19(x0, x1, ty_Integer)
new_esEs19(x0, x1, ty_Ordering)
new_ltEs12(Just(x0), Just(x1), ty_Bool)
new_esEs26(x0, x1, ty_@0)
new_esEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_compare15(x0, x1, x2, x3, x4)
new_ltEs9(x0, x1, x2)
new_sr(x0, x1)
new_primCmpNat0(Zero, Succ(x0))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs30(x0, x1, ty_Double)
new_esEs24(x0, x1, app(ty_[], x2))
new_lt4(x0, x1, ty_Double)
new_primEqNat0(Zero, Succ(x0))
new_esEs23(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_@0)
new_asAs(False, x0)
new_esEs24(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Integer)
new_compare0(:(x0, x1), [], x2)
new_ltEs6(x0, x1)
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_primMulInt(Pos(x0), Pos(x1))
new_esEs24(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Char)
new_compare27(x0, x1, True, x2, x3)
new_esEs20(x0, x1, ty_@0)
new_esEs6(Nothing, Nothing, x0)
new_compare28(x0, x1, False)
new_esEs22(x0, x1, ty_@0)
new_esEs6(Just(x0), Just(x1), ty_Bool)
new_lt4(x0, x1, ty_Int)
new_ltEs7(Left(x0), Right(x1), x2, x3)
new_ltEs7(Right(x0), Left(x1), x2, x3)
new_compare26(x0, x1, True, x2, x3, x4)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_compare16(@0, @0)
new_esEs5(Right(x0), Right(x1), x2, ty_Char)
new_ltEs19(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(Double(x0, x1), Double(x2, x3))
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare17(Float(x0, x1), Float(x2, x3))
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs23(x0, x1, ty_Float)
new_esEs6(Just(x0), Just(x1), ty_@0)
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs12(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Integer)
new_ltEs14(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs10(True, True)
new_esEs24(x0, x1, ty_Float)
new_esEs5(Left(x0), Left(x1), ty_Ordering, x2)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs19(x0, x1, ty_Int)
new_esEs22(x0, x1, ty_Double)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(ty_[], x2))
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs30(x0, x1, ty_Int)
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_lt19(x0, x1, ty_@0)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_compare113(x0, x1, False)
new_compare6(x0, x1, ty_Integer)
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs5(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11([], [], x0)
new_esEs8(x0, x1, ty_@0)
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs6(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_primCompAux0(x0, x1, x2, x3)
new_esEs5(Right(x0), Right(x1), x2, ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_lt19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_compare10(x0, x1)
new_esEs22(x0, x1, ty_Bool)
new_esEs27(x0, x1, ty_Integer)
new_ltEs7(Left(x0), Left(x1), ty_Int, x2)
new_esEs29(x0, x1, ty_Float)
new_esEs8(x0, x1, ty_Double)
new_lt20(x0, x1, ty_Integer)
new_ltEs13(EQ, GT)
new_ltEs13(GT, EQ)
new_esEs26(x0, x1, ty_Double)
new_esEs6(Just(x0), Just(x1), ty_Float)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_ltEs7(Left(x0), Left(x1), ty_Float, x2)
new_lt12(x0, x1, x2)
new_esEs11(:(x0, x1), :(x2, x3), x4)
new_esEs5(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs7(Left(x0), Left(x1), ty_Double, x2)
new_ltEs8(False, False)
new_lt20(x0, x1, ty_Double)
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_esEs21(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_ltEs19(x0, x1, ty_Float)
new_ltEs7(Right(x0), Right(x1), x2, ty_Float)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs8(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs8(x0, x1, ty_Float)
new_esEs23(x0, x1, app(ty_[], x2))
new_ltEs8(False, True)
new_ltEs8(True, False)
new_ltEs12(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs7(Right(x0), Right(x1), x2, ty_Char)
new_lt4(x0, x1, ty_Bool)
new_compare115(x0, x1, True, x2, x3, x4)
new_ltEs12(Just(x0), Just(x1), ty_Int)
new_compare19(Integer(x0), Integer(x1))
new_esEs25(x0, x1, ty_Char)
new_compare9(x0, x1, x2, x3)
new_lt18(x0, x1)
new_ltEs13(LT, GT)
new_ltEs13(GT, LT)
new_primCompAux00(x0, EQ)
new_esEs21(x0, x1, ty_Double)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs6(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_primEqInt(Neg(Zero), Neg(Zero))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_sr0(Integer(x0), Integer(x1))
new_compare110(x0, x1, True, x2, x3)
new_ltEs19(x0, x1, ty_Char)
new_lt4(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_Double)
new_compare18(Char(x0), Char(x1))
new_esEs8(x0, x1, ty_Bool)
new_ltEs5(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), ty_Ordering)
new_esEs20(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), ty_Integer)
new_compare8(x0, x1)
new_compare7(x0, x1, x2, x3)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs12(Just(x0), Just(x1), ty_Float)
new_ltEs19(x0, x1, ty_@0)
new_compare0([], :(x0, x1), x2)
new_ltEs7(Left(x0), Left(x1), ty_Integer, x2)
new_primCompAux00(x0, LT)
new_esEs5(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_lt17(x0, x1)
new_lt4(x0, x1, app(app(ty_@2, x2), x3))
new_esEs5(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs18(Integer(x0), Integer(x1))
new_lt20(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_lt4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs21(x0, x1, app(ty_[], x2))
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs17(Char(x0), Char(x1))
new_esEs19(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_compare26(x0, x1, False, x2, x3, x4)
new_esEs19(x0, x1, app(ty_[], x2))
new_lt6(x0, x1)
new_lt19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Bool)
new_lt4(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(Right(x0), Right(x1), x2, app(ty_[], x3))
new_lt19(x0, x1, ty_Ordering)
new_esEs23(x0, x1, ty_Int)
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs5(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs7(Left(x0), Left(x1), ty_@0, x2)
new_esEs5(Left(x0), Right(x1), x2, x3)
new_esEs5(Right(x0), Left(x1), x2, x3)
new_lt19(x0, x1, ty_Char)
new_esEs21(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, ty_Ordering)
new_ltEs7(Right(x0), Right(x1), x2, ty_Bool)
new_esEs23(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(Nothing, Just(x0), x1)
new_primCmpNat0(Zero, Zero)
new_esEs6(Just(x0), Just(x1), app(ty_Maybe, x2))
new_lt4(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Bool, x2)
new_esEs10(False, False)
new_compare112(x0, x1, True, x2)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, ty_Char)
new_primPlusNat1(Zero, Succ(x0))
new_lt20(x0, x1, ty_Int)
new_ltEs13(LT, LT)
new_esEs5(Left(x0), Left(x1), ty_Int, x2)
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_lt19(x0, x1, ty_Bool)
new_esEs15(@0, @0)
new_esEs5(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs30(x0, x1, ty_Ordering)
new_esEs22(x0, x1, ty_Integer)
new_esEs29(x0, x1, ty_Char)
new_compare6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Just(x0), Just(x1), ty_Char)
new_esEs6(Just(x0), Just(x1), ty_Double)
new_esEs30(x0, x1, ty_Float)
new_compare24(x0, x1, False, x2, x3)
new_ltEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs12(Nothing, Nothing, x0)
new_esEs25(x0, x1, ty_Bool)
new_primCmpNat0(Succ(x0), Zero)
new_compare6(x0, x1, app(ty_Maybe, x2))
new_ltEs12(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_esEs5(Right(x0), Right(x1), x2, ty_Integer)
new_lt19(x0, x1, ty_Double)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(GT, GT)
new_ltEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs16(Float(x0, x1), Float(x2, x3))
new_esEs11(:(x0, x1), [], x2)
new_lt14(x0, x1, x2, x3, x4)
new_esEs24(x0, x1, ty_@0)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_lt11(x0, x1, x2)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_@0)
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(x0, x1)
new_not(True)
new_lt19(x0, x1, ty_Float)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_compare23(x0, x1, False)
new_ltEs11(x0, x1, x2)
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_lt4(x0, x1, ty_Ordering)
new_compare27(x0, x1, False, x2, x3)
new_esEs20(x0, x1, app(ty_[], x2))
new_esEs24(x0, x1, ty_Ordering)
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, ty_@0)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_primCompAux00(x0, GT)
new_esEs23(x0, x1, ty_Integer)
new_lt15(x0, x1)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_esEs25(x0, x1, app(ty_[], x2))
new_esEs8(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Double)
new_esEs25(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, True)
new_compare6(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Double, x2)
new_ltEs17(x0, x1)
new_lt7(x0, x1, x2, x3)
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Nothing, Just(x0), x1)
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Just(x0), Just(x1), ty_Integer)
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_esEs22(x0, x1, app(ty_[], x2))
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_compare6(x0, x1, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Float, x2)
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Ordering)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_esEs5(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_compare23(x0, x1, True)
new_compare115(x0, x1, False, x2, x3, x4)
new_esEs5(Left(x0), Left(x1), ty_@0, x2)
new_ltEs16(x0, x1)
new_esEs19(x0, x1, ty_@0)
new_esEs6(Just(x0), Just(x1), ty_Int)
new_esEs19(x0, x1, ty_Float)
new_lt4(x0, x1, ty_Float)
new_compare11(Double(x0, x1), Double(x2, x3))
new_esEs20(x0, x1, ty_Char)
new_esEs7(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt19(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Char)
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_compare114(x0, x1, False, x2, x3)
new_esEs25(x0, x1, ty_Double)
new_compare6(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_compare6(x0, x1, app(ty_Ratio, x2))
new_compare6(x0, x1, ty_@0)
new_lt19(x0, x1, app(ty_Ratio, x2))
new_ltEs12(Just(x0), Just(x1), ty_Ordering)
new_esEs20(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_primEqNat0(Succ(x0), Succ(x1))
new_primEqInt(Pos(Zero), Pos(Zero))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_lt19(x0, x1, ty_Int)
new_compare112(x0, x1, False, x2)
new_ltEs7(Left(x0), Left(x1), ty_Bool, x2)
new_esEs5(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Ordering)
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_lt16(x0, x1)
new_esEs21(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare0(:(x0, x1), :(x2, x3), x4)
new_esEs5(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_ltEs5(x0, x1, ty_@0)
new_esEs5(Right(x0), Right(x1), x2, ty_@0)
new_primMulNat0(Succ(x0), Zero)
new_compare0([], [], x0)
new_primPlusNat0(Zero, x0)
new_esEs5(Right(x0), Right(x1), x2, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_lt10(x0, x1)
new_ltEs7(Right(x0), Right(x1), x2, ty_@0)
new_ltEs20(x0, x1, ty_Float)
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
Q DP problem:
The TRS P consists of the following rules:
new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, False, h, ba) → new_elemFM04(vyw400, vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Just(vyw400), False, ba), GT), h, ba)
new_elemFM00(Branch(Just(vyw400), vyw41, vyw42, vyw43, vyw44), Nothing, h, ba) → new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Just(vyw400), False, ba), LT), h, ba)
new_elemFM04(vyw400, vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw44, Nothing, h, ba)
new_elemFM00(Branch(Nothing, vyw41, vyw42, vyw43, vyw44), Nothing, h, ba) → new_elemFM0(vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Nothing, True, ba), GT), h, ba)
new_elemFM0(vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw44, Nothing, h, ba)
new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw43, Nothing, h, ba)
The TRS R consists of the following rules:
new_compare25(Nothing, Just(vyw2900), False, beg) → LT
new_esEs14(LT, GT) → False
new_esEs14(EQ, GT) → False
new_esEs14(GT, GT) → True
new_compare25(vyw280, vyw290, True, beg) → EQ
new_esEs14(GT, LT) → False
new_esEs14(EQ, LT) → False
new_esEs14(LT, LT) → True
The set Q consists of the following terms:
new_esEs14(EQ, GT)
new_esEs14(GT, EQ)
new_compare25(Just(x0), Just(x1), False, x2)
new_esEs14(LT, GT)
new_esEs14(GT, LT)
new_esEs14(LT, LT)
new_compare25(Just(x0), Nothing, False, x1)
new_esEs14(EQ, LT)
new_esEs14(LT, EQ)
new_esEs14(GT, GT)
new_compare25(x0, x1, True, x2)
new_esEs14(EQ, EQ)
new_compare25(Nothing, Just(x0), False, x1)
new_compare25(Nothing, Nothing, False, x0)
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_elemFM04(vyw400, vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw44, Nothing, h, ba)
The graph contains the following edges 5 >= 1, 7 >= 3, 8 >= 4
- new_elemFM00(Branch(Just(vyw400), vyw41, vyw42, vyw43, vyw44), Nothing, h, ba) → new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Just(vyw400), False, ba), LT), h, ba)
The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 1 > 4, 1 > 5, 3 >= 7, 4 >= 8
- new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw43, Nothing, h, ba)
The graph contains the following edges 4 >= 1, 7 >= 3, 8 >= 4
- new_elemFM01(vyw400, vyw41, vyw42, vyw43, vyw44, False, h, ba) → new_elemFM04(vyw400, vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Just(vyw400), False, ba), GT), h, ba)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 7 >= 7, 8 >= 8
- new_elemFM0(vyw41, vyw42, vyw43, vyw44, True, h, ba) → new_elemFM00(vyw44, Nothing, h, ba)
The graph contains the following edges 4 >= 1, 6 >= 3, 7 >= 4
- new_elemFM00(Branch(Nothing, vyw41, vyw42, vyw43, vyw44), Nothing, h, ba) → new_elemFM0(vyw41, vyw42, vyw43, vyw44, new_esEs14(new_compare25(Nothing, Nothing, True, ba), GT), h, ba)
The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 1 > 4, 3 >= 6, 4 >= 7
↳ HASKELL
↳ LR
↳ HASKELL
↳ CR
↳ HASKELL
↳ IFR
↳ HASKELL
↳ BR
↳ HASKELL
↳ COR
↳ HASKELL
↳ LetRed
↳ HASKELL
↳ NumRed
↳ HASKELL
↳ Narrow
↳ AND
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPSizeChangeProof
Q DP problem:
The TRS P consists of the following rules:
new_elemFM00(Branch(Just(vyw400), vyw41, vyw42, vyw43, vyw44), Just(vyw30), h, ba) → new_elemFM03(vyw400, vyw41, vyw42, vyw43, vyw44, vyw30, new_esEs14(new_compare25(Just(vyw30), Just(vyw400), new_esEs29(vyw30, vyw400, ba), ba), LT), h, ba)
new_elemFM02(vyw41, vyw42, vyw43, vyw44, vyw30, True, h, ba) → new_elemFM00(vyw43, Just(vyw30), h, ba)
new_elemFM06(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, True, bb, bc) → new_elemFM00(vyw17, Just(vyw18), bb, bc)
new_elemFM05(vyw41, vyw42, vyw43, vyw44, vyw30, True, h, ba) → new_elemFM00(vyw44, Just(vyw30), h, ba)
new_elemFM02(vyw41, vyw42, vyw43, vyw44, vyw30, False, h, ba) → new_elemFM05(vyw41, vyw42, vyw43, vyw44, vyw30, new_esEs14(new_compare25(Just(vyw30), Nothing, False, ba), GT), h, ba)
new_elemFM00(Branch(Nothing, vyw41, vyw42, vyw43, vyw44), Just(vyw30), h, ba) → new_elemFM02(vyw41, vyw42, vyw43, vyw44, vyw30, new_esEs14(new_compare25(Just(vyw30), Nothing, False, ba), LT), h, ba)
new_elemFM03(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, True, bb, bc) → new_elemFM00(vyw16, Just(vyw18), bb, bc)
new_elemFM03(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, False, bb, bc) → new_elemFM06(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, new_esEs14(new_compare25(Just(vyw18), Just(vyw13), new_esEs30(vyw18, vyw13, bc), bc), GT), bb, bc)
The TRS R consists of the following rules:
new_esEs30(vyw18, vyw13, app(ty_Maybe, ccg)) → new_esEs6(vyw18, vyw13, ccg)
new_esEs26(vyw301, vyw4001, ty_@0) → new_esEs15(vyw301, vyw4001)
new_compare112(vyw84, vyw85, True, bef) → LT
new_esEs24(vyw28001, vyw29001, app(app(ty_Either, cad), cae)) → new_esEs5(vyw28001, vyw29001, cad, cae)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Char) → new_esEs17(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Int) → new_ltEs6(vyw28000, vyw29000)
new_ltEs19(vyw2800, vyw2900, app(ty_Ratio, beh)) → new_ltEs11(vyw2800, vyw2900, beh)
new_compare6(vyw28000, vyw29000, app(app(app(ty_@3, bbe), bbf), bbg)) → new_compare15(vyw28000, vyw29000, bbe, bbf, bbg)
new_ltEs8(False, True) → True
new_esEs5(Left(vyw300), Left(vyw4000), ty_Ordering, cge) → new_esEs14(vyw300, vyw4000)
new_esEs17(Char(vyw300), Char(vyw4000)) → new_primEqNat0(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, app(ty_[], bbb)) → new_compare0(vyw28000, vyw29000, bbb)
new_ltEs19(vyw2800, vyw2900, app(ty_[], bae)) → new_ltEs9(vyw2800, vyw2900, bae)
new_esEs24(vyw28001, vyw29001, ty_Char) → new_esEs17(vyw28001, vyw29001)
new_compare110(vyw28000, vyw29000, True, bf, bg) → LT
new_lt6(vyw28000, vyw29000) → new_esEs14(new_compare8(vyw28000, vyw29000), LT)
new_lt19(vyw28001, vyw29001, ty_Integer) → new_lt18(vyw28001, vyw29001)
new_esEs23(vyw28000, vyw29000, app(app(ty_Either, bhb), bhc)) → new_esEs5(vyw28000, vyw29000, bhb, bhc)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Double, cge) → new_esEs12(vyw300, vyw4000)
new_esEs23(vyw28000, vyw29000, app(app(ty_@2, bgh), bha)) → new_esEs4(vyw28000, vyw29000, bgh, bha)
new_esEs23(vyw28000, vyw29000, ty_Integer) → new_esEs18(vyw28000, vyw29000)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(ty_[], bdh)) → new_ltEs9(vyw28000, vyw29000, bdh)
new_esEs29(vyw30, vyw400, ty_Int) → new_esEs9(vyw30, vyw400)
new_esEs20(vyw301, vyw4001, ty_Int) → new_esEs9(vyw301, vyw4001)
new_lt4(vyw28000, vyw29000, ty_Double) → new_lt10(vyw28000, vyw29000)
new_esEs20(vyw301, vyw4001, ty_Double) → new_esEs12(vyw301, vyw4001)
new_compare27(vyw28000, vyw29000, False, bh, ca) → new_compare114(vyw28000, vyw29000, new_ltEs7(vyw28000, vyw29000, bh, ca), bh, ca)
new_esEs25(vyw300, vyw4000, ty_Char) → new_esEs17(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(ty_[], ced)) → new_ltEs9(vyw28000, vyw29000, ced)
new_esEs23(vyw28000, vyw29000, ty_Float) → new_esEs16(vyw28000, vyw29000)
new_ltEs12(Nothing, Nothing, bfa) → True
new_esEs16(Float(vyw300, vyw301), Float(vyw4000, vyw4001)) → new_esEs9(new_sr(vyw300, vyw4000), new_sr(vyw301, vyw4001))
new_ltEs7(Left(vyw28000), Right(vyw29000), bdc, bcb) → True
new_primMulNat0(Zero, Zero) → Zero
new_esEs25(vyw300, vyw4000, ty_Double) → new_esEs12(vyw300, vyw4000)
new_esEs6(Just(vyw300), Just(vyw4000), app(ty_Ratio, cfc)) → new_esEs13(vyw300, vyw4000, cfc)
new_ltEs20(vyw28002, vyw29002, ty_@0) → new_ltEs15(vyw28002, vyw29002)
new_esEs29(vyw30, vyw400, ty_Float) → new_esEs16(vyw30, vyw400)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Float) → new_esEs16(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Float) → new_ltEs16(vyw28000, vyw29000)
new_esEs23(vyw28000, vyw29000, app(ty_Ratio, bhe)) → new_esEs13(vyw28000, vyw29000, bhe)
new_esEs25(vyw300, vyw4000, app(app(ty_@2, dbh), dca)) → new_esEs4(vyw300, vyw4000, dbh, dca)
new_lt20(vyw28000, vyw29000, ty_Integer) → new_lt18(vyw28000, vyw29000)
new_compare25(vyw280, vyw290, True, beg) → EQ
new_compare10(vyw28000, vyw29000) → new_compare23(vyw28000, vyw29000, new_esEs10(vyw28000, vyw29000))
new_lt20(vyw28000, vyw29000, app(app(ty_@2, bgh), bha)) → new_lt5(vyw28000, vyw29000, bgh, bha)
new_esEs22(vyw300, vyw4000, ty_Char) → new_esEs17(vyw300, vyw4000)
new_esEs8(vyw28000, vyw29000, ty_Double) → new_esEs12(vyw28000, vyw29000)
new_compare14(vyw28000, vyw29000) → new_compare28(vyw28000, vyw29000, new_esEs14(vyw28000, vyw29000))
new_compare16(@0, @0) → EQ
new_lt18(vyw28000, vyw29000) → new_esEs14(new_compare19(vyw28000, vyw29000), LT)
new_esEs19(vyw300, vyw4000, app(app(app(ty_@3, ff), fg), fh)) → new_esEs7(vyw300, vyw4000, ff, fg, fh)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(app(ty_@2, bdd), bde)) → new_ltEs4(vyw28000, vyw29000, bdd, bde)
new_esEs30(vyw18, vyw13, ty_Int) → new_esEs9(vyw18, vyw13)
new_esEs22(vyw300, vyw4000, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs19(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_ltEs6(vyw2800, vyw2900) → new_not(new_esEs14(new_compare8(vyw2800, vyw2900), GT))
new_esEs20(vyw301, vyw4001, app(ty_Ratio, ga)) → new_esEs13(vyw301, vyw4001, ga)
new_ltEs13(LT, EQ) → True
new_ltEs20(vyw28002, vyw29002, app(ty_[], cbh)) → new_ltEs9(vyw28002, vyw29002, cbh)
new_esEs11([], [], bfe) → True
new_compare0(:(vyw28000, vyw28001), :(vyw29000, vyw29001), bae) → new_primCompAux0(vyw28000, vyw29000, new_compare0(vyw28001, vyw29001, bae), bae)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Double) → new_esEs12(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, ty_Float) → new_compare17(vyw28000, vyw29000)
new_esEs22(vyw300, vyw4000, app(ty_Maybe, bfg)) → new_esEs6(vyw300, vyw4000, bfg)
new_esEs21(vyw302, vyw4002, app(app(app(ty_@3, bab), bac), bad)) → new_esEs7(vyw302, vyw4002, bab, bac, bad)
new_compare12(:%(vyw28000, vyw28001), :%(vyw29000, vyw29001), ty_Integer) → new_compare19(new_sr0(vyw28000, vyw29001), new_sr0(vyw29000, vyw28001))
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_@0) → new_ltEs15(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, app(app(app(ty_@3, ec), ed), ee)) → new_esEs7(vyw30, vyw400, ec, ed, ee)
new_ltEs19(vyw2800, vyw2900, app(ty_Maybe, bfa)) → new_ltEs12(vyw2800, vyw2900, bfa)
new_lt15(vyw28000, vyw29000) → new_esEs14(new_compare16(vyw28000, vyw29000), LT)
new_compare6(vyw28000, vyw29000, ty_@0) → new_compare16(vyw28000, vyw29000)
new_esEs8(vyw28000, vyw29000, app(app(ty_@2, bf), bg)) → new_esEs4(vyw28000, vyw29000, bf, bg)
new_lt9(vyw28000, vyw29000, cb) → new_esEs14(new_compare0(vyw28000, vyw29000, cb), LT)
new_compare6(vyw28000, vyw29000, ty_Integer) → new_compare19(vyw28000, vyw29000)
new_ltEs5(vyw28001, vyw29001, ty_Ordering) → new_ltEs13(vyw28001, vyw29001)
new_esEs19(vyw300, vyw4000, app(app(ty_Either, fc), fd)) → new_esEs5(vyw300, vyw4000, fc, fd)
new_ltEs19(vyw2800, vyw2900, ty_Float) → new_ltEs16(vyw2800, vyw2900)
new_esEs5(Left(vyw300), Left(vyw4000), app(ty_Maybe, cgg), cge) → new_esEs6(vyw300, vyw4000, cgg)
new_pePe(False, vyw98) → vyw98
new_esEs26(vyw301, vyw4001, ty_Bool) → new_esEs10(vyw301, vyw4001)
new_esEs19(vyw300, vyw4000, ty_@0) → new_esEs15(vyw300, vyw4000)
new_lt19(vyw28001, vyw29001, ty_Double) → new_lt10(vyw28001, vyw29001)
new_ltEs19(vyw2800, vyw2900, app(app(ty_@2, bd), be)) → new_ltEs4(vyw2800, vyw2900, bd, be)
new_esEs8(vyw28000, vyw29000, ty_Float) → new_esEs16(vyw28000, vyw29000)
new_compare23(vyw28000, vyw29000, True) → EQ
new_esEs28(vyw301, vyw4001, ty_Integer) → new_esEs18(vyw301, vyw4001)
new_lt19(vyw28001, vyw29001, app(ty_[], caf)) → new_lt9(vyw28001, vyw29001, caf)
new_esEs19(vyw300, vyw4000, app(ty_Maybe, eg)) → new_esEs6(vyw300, vyw4000, eg)
new_esEs22(vyw300, vyw4000, ty_@0) → new_esEs15(vyw300, vyw4000)
new_ltEs5(vyw28001, vyw29001, app(app(ty_@2, da), db)) → new_ltEs4(vyw28001, vyw29001, da, db)
new_esEs22(vyw300, vyw4000, app(app(ty_@2, bfh), bga)) → new_esEs4(vyw300, vyw4000, bfh, bga)
new_ltEs14(@3(vyw28000, vyw28001, vyw28002), @3(vyw29000, vyw29001, vyw29002), bfb, bfc, bfd) → new_pePe(new_lt20(vyw28000, vyw29000, bfb), new_asAs(new_esEs23(vyw28000, vyw29000, bfb), new_pePe(new_lt19(vyw28001, vyw29001, bfc), new_asAs(new_esEs24(vyw28001, vyw29001, bfc), new_ltEs20(vyw28002, vyw29002, bfd)))))
new_esEs14(EQ, EQ) → True
new_lt11(vyw28000, vyw29000, cc) → new_esEs14(new_compare12(vyw28000, vyw29000, cc), LT)
new_esEs19(vyw300, vyw4000, ty_Float) → new_esEs16(vyw300, vyw4000)
new_ltEs13(EQ, GT) → True
new_ltEs5(vyw28001, vyw29001, app(app(app(ty_@3, dh), ea), eb)) → new_ltEs14(vyw28001, vyw29001, dh, ea, eb)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_esEs29(vyw30, vyw400, app(ty_Ratio, dbc)) → new_esEs13(vyw30, vyw400, dbc)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_@0) → new_esEs15(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(ty_Ratio, cee)) → new_ltEs11(vyw28000, vyw29000, cee)
new_compare111(vyw28000, vyw29000, False) → GT
new_compare111(vyw28000, vyw29000, True) → LT
new_esEs24(vyw28001, vyw29001, app(ty_[], caf)) → new_esEs11(vyw28001, vyw29001, caf)
new_ltEs5(vyw28001, vyw29001, app(ty_[], de)) → new_ltEs9(vyw28001, vyw29001, de)
new_esEs29(vyw30, vyw400, app(app(ty_@2, dbd), dbe)) → new_esEs4(vyw30, vyw400, dbd, dbe)
new_esEs29(vyw30, vyw400, app(ty_[], bfe)) → new_esEs11(vyw30, vyw400, bfe)
new_lt20(vyw28000, vyw29000, app(app(ty_Either, bhb), bhc)) → new_lt7(vyw28000, vyw29000, bhb, bhc)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(app(ty_@2, dac), dad)) → new_esEs4(vyw300, vyw4000, dac, dad)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Char) → new_esEs17(vyw300, vyw4000)
new_ltEs20(vyw28002, vyw29002, app(app(ty_@2, cbd), cbe)) → new_ltEs4(vyw28002, vyw29002, cbd, cbe)
new_esEs23(vyw28000, vyw29000, app(app(app(ty_@3, bhg), bhh), caa)) → new_esEs7(vyw28000, vyw29000, bhg, bhh, caa)
new_primCmpNat0(Zero, Succ(vyw290000)) → LT
new_esEs26(vyw301, vyw4001, ty_Double) → new_esEs12(vyw301, vyw4001)
new_esEs20(vyw301, vyw4001, ty_Ordering) → new_esEs14(vyw301, vyw4001)
new_ltEs20(vyw28002, vyw29002, ty_Bool) → new_ltEs8(vyw28002, vyw29002)
new_lt19(vyw28001, vyw29001, app(app(ty_@2, cab), cac)) → new_lt5(vyw28001, vyw29001, cab, cac)
new_lt20(vyw28000, vyw29000, app(app(app(ty_@3, bhg), bhh), caa)) → new_lt14(vyw28000, vyw29000, bhg, bhh, caa)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(ty_Ratio, bcf), bcb) → new_ltEs11(vyw28000, vyw29000, bcf)
new_esEs25(vyw300, vyw4000, app(app(ty_Either, dcc), dcd)) → new_esEs5(vyw300, vyw4000, dcc, dcd)
new_compare24(vyw28000, vyw29000, False, bf, bg) → new_compare110(vyw28000, vyw29000, new_ltEs4(vyw28000, vyw29000, bf, bg), bf, bg)
new_lt20(vyw28000, vyw29000, ty_@0) → new_lt15(vyw28000, vyw29000)
new_esEs21(vyw302, vyw4002, app(ty_Ratio, hc)) → new_esEs13(vyw302, vyw4002, hc)
new_lt19(vyw28001, vyw29001, ty_@0) → new_lt15(vyw28001, vyw29001)
new_esEs7(@3(vyw300, vyw301, vyw302), @3(vyw4000, vyw4001, vyw4002), ec, ed, ee) → new_asAs(new_esEs19(vyw300, vyw4000, ec), new_asAs(new_esEs20(vyw301, vyw4001, ed), new_esEs21(vyw302, vyw4002, ee)))
new_esEs25(vyw300, vyw4000, app(ty_Ratio, dbf)) → new_esEs13(vyw300, vyw4000, dbf)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Double) → new_ltEs10(vyw28000, vyw29000)
new_compare0([], [], bae) → EQ
new_pePe(True, vyw98) → True
new_primEqNat0(Zero, Zero) → True
new_esEs6(Just(vyw300), Just(vyw4000), app(app(app(ty_@3, cgb), cgc), cgd)) → new_esEs7(vyw300, vyw4000, cgb, cgc, cgd)
new_esEs23(vyw28000, vyw29000, ty_Ordering) → new_esEs14(vyw28000, vyw29000)
new_ltEs19(vyw2800, vyw2900, ty_Integer) → new_ltEs18(vyw2800, vyw2900)
new_ltEs5(vyw28001, vyw29001, ty_Bool) → new_ltEs8(vyw28001, vyw29001)
new_esEs29(vyw30, vyw400, app(ty_Maybe, cfb)) → new_esEs6(vyw30, vyw400, cfb)
new_esEs19(vyw300, vyw4000, app(ty_Ratio, ef)) → new_esEs13(vyw300, vyw4000, ef)
new_esEs26(vyw301, vyw4001, ty_Char) → new_esEs17(vyw301, vyw4001)
new_esEs19(vyw300, vyw4000, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs26(vyw301, vyw4001, app(ty_Maybe, dda)) → new_esEs6(vyw301, vyw4001, dda)
new_esEs8(vyw28000, vyw29000, ty_Int) → new_esEs9(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Int, cge) → new_esEs9(vyw300, vyw4000)
new_lt4(vyw28000, vyw29000, ty_Char) → new_lt17(vyw28000, vyw29000)
new_esEs26(vyw301, vyw4001, app(ty_Ratio, dch)) → new_esEs13(vyw301, vyw4001, dch)
new_lt20(vyw28000, vyw29000, app(ty_[], bhd)) → new_lt9(vyw28000, vyw29000, bhd)
new_esEs25(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_compare110(vyw28000, vyw29000, False, bf, bg) → GT
new_ltEs15(vyw2800, vyw2900) → new_not(new_esEs14(new_compare16(vyw2800, vyw2900), GT))
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Double) → new_ltEs10(vyw28000, vyw29000)
new_ltEs20(vyw28002, vyw29002, app(app(app(ty_@3, ccc), ccd), cce)) → new_ltEs14(vyw28002, vyw29002, ccc, ccd, cce)
new_sr(vyw301, vyw4001) → new_primMulInt(vyw301, vyw4001)
new_esEs30(vyw18, vyw13, app(ty_[], cdb)) → new_esEs11(vyw18, vyw13, cdb)
new_esEs11(:(vyw300, vyw301), :(vyw4000, vyw4001), bfe) → new_asAs(new_esEs22(vyw300, vyw4000, bfe), new_esEs11(vyw301, vyw4001, bfe))
new_esEs14(LT, GT) → False
new_esEs14(GT, LT) → False
new_ltEs20(vyw28002, vyw29002, app(ty_Ratio, cca)) → new_ltEs11(vyw28002, vyw29002, cca)
new_primPlusNat0(Succ(vyw1000), vyw400100) → Succ(Succ(new_primPlusNat1(vyw1000, vyw400100)))
new_lt19(vyw28001, vyw29001, app(ty_Ratio, cag)) → new_lt11(vyw28001, vyw29001, cag)
new_esEs25(vyw300, vyw4000, ty_Float) → new_esEs16(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, app(app(app(ty_@3, gh), ha), hb)) → new_esEs7(vyw301, vyw4001, gh, ha, hb)
new_ltEs18(vyw2800, vyw2900) → new_not(new_esEs14(new_compare19(vyw2800, vyw2900), GT))
new_ltEs19(vyw2800, vyw2900, ty_Double) → new_ltEs10(vyw2800, vyw2900)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(ty_[], dae)) → new_esEs11(vyw300, vyw4000, dae)
new_lt20(vyw28000, vyw29000, ty_Char) → new_lt17(vyw28000, vyw29000)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_@0, bcb) → new_ltEs15(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), app(ty_Ratio, cgf), cge) → new_esEs13(vyw300, vyw4000, cgf)
new_ltEs20(vyw28002, vyw29002, ty_Float) → new_ltEs16(vyw28002, vyw29002)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_@0) → new_ltEs15(vyw28000, vyw29000)
new_lt4(vyw28000, vyw29000, app(app(ty_Either, bh), ca)) → new_lt7(vyw28000, vyw29000, bh, ca)
new_lt14(vyw28000, vyw29000, ce, cf, cg) → new_esEs14(new_compare15(vyw28000, vyw29000, ce, cf, cg), LT)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Int, bcb) → new_ltEs6(vyw28000, vyw29000)
new_lt19(vyw28001, vyw29001, ty_Bool) → new_lt8(vyw28001, vyw29001)
new_primEqInt(Neg(Succ(vyw3000)), Neg(Succ(vyw40000))) → new_primEqNat0(vyw3000, vyw40000)
new_lt20(vyw28000, vyw29000, app(ty_Ratio, bhe)) → new_lt11(vyw28000, vyw29000, bhe)
new_compare6(vyw28000, vyw29000, ty_Bool) → new_compare10(vyw28000, vyw29000)
new_compare28(vyw28000, vyw29000, False) → new_compare113(vyw28000, vyw29000, new_ltEs13(vyw28000, vyw29000))
new_ltEs5(vyw28001, vyw29001, ty_Char) → new_ltEs17(vyw28001, vyw29001)
new_primCompAux0(vyw28000, vyw29000, vyw99, bae) → new_primCompAux00(vyw99, new_compare6(vyw28000, vyw29000, bae))
new_compare6(vyw28000, vyw29000, ty_Int) → new_compare8(vyw28000, vyw29000)
new_esEs12(Double(vyw300, vyw301), Double(vyw4000, vyw4001)) → new_esEs9(new_sr(vyw300, vyw4000), new_sr(vyw301, vyw4001))
new_esEs19(vyw300, vyw4000, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_primPlusNat1(Succ(vyw10000), Zero) → Succ(vyw10000)
new_primPlusNat1(Zero, Succ(vyw4001000)) → Succ(vyw4001000)
new_lt4(vyw28000, vyw29000, ty_Integer) → new_lt18(vyw28000, vyw29000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Bool) → new_ltEs8(vyw28000, vyw29000)
new_compare25(Just(vyw2800), Nothing, False, beg) → GT
new_compare6(vyw28000, vyw29000, app(ty_Ratio, bbc)) → new_compare12(vyw28000, vyw29000, bbc)
new_esEs8(vyw28000, vyw29000, ty_@0) → new_esEs15(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, app(app(ty_Either, chh), cge)) → new_esEs5(vyw30, vyw400, chh, cge)
new_compare25(Nothing, Nothing, False, beg) → LT
new_ltEs8(True, True) → True
new_esEs26(vyw301, vyw4001, app(app(app(ty_@3, ddg), ddh), dea)) → new_esEs7(vyw301, vyw4001, ddg, ddh, dea)
new_esEs21(vyw302, vyw4002, ty_Ordering) → new_esEs14(vyw302, vyw4002)
new_esEs21(vyw302, vyw4002, ty_@0) → new_esEs15(vyw302, vyw4002)
new_ltEs13(LT, GT) → True
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Bool) → new_ltEs8(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), app(app(app(ty_@3, che), chf), chg), cge) → new_esEs7(vyw300, vyw4000, che, chf, chg)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs24(vyw28001, vyw29001, ty_Bool) → new_esEs10(vyw28001, vyw29001)
new_ltEs7(Right(vyw28000), Left(vyw29000), bdc, bcb) → False
new_compare6(vyw28000, vyw29000, ty_Ordering) → new_compare14(vyw28000, vyw29000)
new_esEs30(vyw18, vyw13, app(app(app(ty_@3, cde), cdf), cdg)) → new_esEs7(vyw18, vyw13, cde, cdf, cdg)
new_esEs8(vyw28000, vyw29000, app(ty_Ratio, cc)) → new_esEs13(vyw28000, vyw29000, cc)
new_compare8(vyw2800, vyw2900) → new_primCmpInt(vyw2800, vyw2900)
new_primEqInt(Neg(Succ(vyw3000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(vyw40000))) → False
new_lt12(vyw28000, vyw29000, cd) → new_esEs14(new_compare13(vyw28000, vyw29000, cd), LT)
new_lt20(vyw28000, vyw29000, ty_Ordering) → new_lt13(vyw28000, vyw29000)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(ty_Ratio, bea)) → new_ltEs11(vyw28000, vyw29000, bea)
new_compare24(vyw28000, vyw29000, True, bf, bg) → EQ
new_lt4(vyw28000, vyw29000, ty_Bool) → new_lt8(vyw28000, vyw29000)
new_esEs10(False, False) → True
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Char) → new_ltEs17(vyw28000, vyw29000)
new_ltEs19(vyw2800, vyw2900, ty_Char) → new_ltEs17(vyw2800, vyw2900)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs21(vyw302, vyw4002, ty_Integer) → new_esEs18(vyw302, vyw4002)
new_lt4(vyw28000, vyw29000, app(ty_Ratio, cc)) → new_lt11(vyw28000, vyw29000, cc)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(app(ty_@2, bbh), bca), bcb) → new_ltEs4(vyw28000, vyw29000, bbh, bca)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs5(Left(vyw300), Left(vyw4000), app(ty_[], chb), cge) → new_esEs11(vyw300, vyw4000, chb)
new_lt19(vyw28001, vyw29001, ty_Int) → new_lt6(vyw28001, vyw29001)
new_primCmpNat0(Succ(vyw280000), Succ(vyw290000)) → new_primCmpNat0(vyw280000, vyw290000)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_esEs30(vyw18, vyw13, ty_@0) → new_esEs15(vyw18, vyw13)
new_esEs6(Nothing, Nothing, cfb) → True
new_esEs29(vyw30, vyw400, ty_Ordering) → new_esEs14(vyw30, vyw400)
new_ltEs13(GT, LT) → False
new_primEqInt(Pos(Succ(vyw3000)), Pos(Succ(vyw40000))) → new_primEqNat0(vyw3000, vyw40000)
new_compare27(vyw28000, vyw29000, True, bh, ca) → EQ
new_esEs21(vyw302, vyw4002, app(ty_Maybe, hd)) → new_esEs6(vyw302, vyw4002, hd)
new_ltEs13(EQ, EQ) → True
new_esEs23(vyw28000, vyw29000, ty_Char) → new_esEs17(vyw28000, vyw29000)
new_lt4(vyw28000, vyw29000, app(ty_Maybe, cd)) → new_lt12(vyw28000, vyw29000, cd)
new_ltEs17(vyw2800, vyw2900) → new_not(new_esEs14(new_compare18(vyw2800, vyw2900), GT))
new_esEs25(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(app(ty_Either, daf), dag)) → new_esEs5(vyw300, vyw4000, daf, dag)
new_esEs8(vyw28000, vyw29000, ty_Integer) → new_esEs18(vyw28000, vyw29000)
new_esEs6(Just(vyw300), Nothing, cfb) → False
new_esEs6(Nothing, Just(vyw4000), cfb) → False
new_primEqNat0(Succ(vyw3000), Succ(vyw40000)) → new_primEqNat0(vyw3000, vyw40000)
new_lt5(vyw28000, vyw29000, bf, bg) → new_esEs14(new_compare7(vyw28000, vyw29000, bf, bg), LT)
new_esEs30(vyw18, vyw13, ty_Integer) → new_esEs18(vyw18, vyw13)
new_primCompAux00(vyw109, LT) → LT
new_esEs26(vyw301, vyw4001, app(ty_[], ddd)) → new_esEs11(vyw301, vyw4001, ddd)
new_primCmpInt(Neg(Succ(vyw280000)), Neg(vyw29000)) → new_primCmpNat0(vyw29000, Succ(vyw280000))
new_ltEs19(vyw2800, vyw2900, app(app(ty_Either, bdc), bcb)) → new_ltEs7(vyw2800, vyw2900, bdc, bcb)
new_compare114(vyw28000, vyw29000, True, bh, ca) → LT
new_esEs26(vyw301, vyw4001, app(app(ty_@2, ddb), ddc)) → new_esEs4(vyw301, vyw4001, ddb, ddc)
new_compare115(vyw28000, vyw29000, True, ce, cf, cg) → LT
new_ltEs7(Left(vyw28000), Left(vyw29000), app(ty_[], bce), bcb) → new_ltEs9(vyw28000, vyw29000, bce)
new_lt19(vyw28001, vyw29001, app(app(ty_Either, cad), cae)) → new_lt7(vyw28001, vyw29001, cad, cae)
new_ltEs19(vyw2800, vyw2900, ty_Bool) → new_ltEs8(vyw2800, vyw2900)
new_primEqInt(Pos(Zero), Pos(Succ(vyw40000))) → False
new_primEqInt(Pos(Succ(vyw3000)), Pos(Zero)) → False
new_ltEs20(vyw28002, vyw29002, app(ty_Maybe, ccb)) → new_ltEs12(vyw28002, vyw29002, ccb)
new_lt4(vyw28000, vyw29000, app(ty_[], cb)) → new_lt9(vyw28000, vyw29000, cb)
new_esEs30(vyw18, vyw13, ty_Float) → new_esEs16(vyw18, vyw13)
new_lt13(vyw28000, vyw29000) → new_esEs14(new_compare14(vyw28000, vyw29000), LT)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(vyw280000), Zero) → GT
new_ltEs12(Just(vyw28000), Just(vyw29000), app(app(ty_@2, cdh), cea)) → new_ltEs4(vyw28000, vyw29000, cdh, cea)
new_compare9(vyw28000, vyw29000, bh, ca) → new_compare27(vyw28000, vyw29000, new_esEs5(vyw28000, vyw29000, bh, ca), bh, ca)
new_esEs24(vyw28001, vyw29001, ty_@0) → new_esEs15(vyw28001, vyw29001)
new_primCmpInt(Neg(Zero), Pos(Succ(vyw290000))) → LT
new_esEs20(vyw301, vyw4001, app(app(ty_Either, gf), gg)) → new_esEs5(vyw301, vyw4001, gf, gg)
new_esEs22(vyw300, vyw4000, app(ty_Ratio, bff)) → new_esEs13(vyw300, vyw4000, bff)
new_sr0(Integer(vyw280000), Integer(vyw290010)) → Integer(new_primMulInt(vyw280000, vyw290010))
new_lt4(vyw28000, vyw29000, app(app(ty_@2, bf), bg)) → new_lt5(vyw28000, vyw29000, bf, bg)
new_primPlusNat1(Succ(vyw10000), Succ(vyw4001000)) → Succ(Succ(new_primPlusNat1(vyw10000, vyw4001000)))
new_ltEs11(vyw2800, vyw2900, beh) → new_not(new_esEs14(new_compare12(vyw2800, vyw2900, beh), GT))
new_primEqInt(Neg(Succ(vyw3000)), Pos(vyw4000)) → False
new_primEqInt(Pos(Succ(vyw3000)), Neg(vyw4000)) → False
new_esEs24(vyw28001, vyw29001, app(ty_Ratio, cag)) → new_esEs13(vyw28001, vyw29001, cag)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(ty_Maybe, cef)) → new_ltEs12(vyw28000, vyw29000, cef)
new_esEs24(vyw28001, vyw29001, app(app(ty_@2, cab), cac)) → new_esEs4(vyw28001, vyw29001, cab, cac)
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, app(app(ty_Either, bah), bba)) → new_compare9(vyw28000, vyw29000, bah, bba)
new_esEs8(vyw28000, vyw29000, app(app(ty_Either, bh), ca)) → new_esEs5(vyw28000, vyw29000, bh, ca)
new_ltEs19(vyw2800, vyw2900, ty_@0) → new_ltEs15(vyw2800, vyw2900)
new_ltEs20(vyw28002, vyw29002, ty_Double) → new_ltEs10(vyw28002, vyw29002)
new_esEs11([], :(vyw4000, vyw4001), bfe) → False
new_esEs11(:(vyw300, vyw301), [], bfe) → False
new_ltEs20(vyw28002, vyw29002, ty_Integer) → new_ltEs18(vyw28002, vyw29002)
new_esEs26(vyw301, vyw4001, ty_Int) → new_esEs9(vyw301, vyw4001)
new_esEs8(vyw28000, vyw29000, ty_Char) → new_esEs17(vyw28000, vyw29000)
new_primEqInt(Pos(Zero), Neg(Succ(vyw40000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(vyw40000))) → False
new_esEs4(@2(vyw300, vyw301), @2(vyw4000, vyw4001), dbd, dbe) → new_asAs(new_esEs25(vyw300, vyw4000, dbd), new_esEs26(vyw301, vyw4001, dbe))
new_esEs5(Left(vyw300), Left(vyw4000), app(app(ty_@2, cgh), cha), cge) → new_esEs4(vyw300, vyw4000, cgh, cha)
new_esEs22(vyw300, vyw4000, app(ty_[], bgb)) → new_esEs11(vyw300, vyw4000, bgb)
new_compare23(vyw28000, vyw29000, False) → new_compare111(vyw28000, vyw29000, new_ltEs8(vyw28000, vyw29000))
new_primCmpInt(Pos(Zero), Pos(Succ(vyw290000))) → new_primCmpNat0(Zero, Succ(vyw290000))
new_primCompAux00(vyw109, EQ) → vyw109
new_esEs20(vyw301, vyw4001, ty_Bool) → new_esEs10(vyw301, vyw4001)
new_compare7(vyw28000, vyw29000, bf, bg) → new_compare24(vyw28000, vyw29000, new_esEs4(vyw28000, vyw29000, bf, bg), bf, bg)
new_ltEs13(GT, EQ) → False
new_esEs24(vyw28001, vyw29001, ty_Ordering) → new_esEs14(vyw28001, vyw29001)
new_compare25(Nothing, Just(vyw2900), False, beg) → LT
new_ltEs13(EQ, LT) → False
new_esEs29(vyw30, vyw400, ty_Double) → new_esEs12(vyw30, vyw400)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs25(vyw300, vyw4000, ty_Bool) → new_esEs10(vyw300, vyw4000)
new_esEs26(vyw301, vyw4001, ty_Float) → new_esEs16(vyw301, vyw4001)
new_compare6(vyw28000, vyw29000, ty_Double) → new_compare11(vyw28000, vyw29000)
new_ltEs8(True, False) → False
new_esEs24(vyw28001, vyw29001, ty_Integer) → new_esEs18(vyw28001, vyw29001)
new_compare113(vyw28000, vyw29000, True) → LT
new_not(False) → True
new_esEs22(vyw300, vyw4000, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_compare6(vyw28000, vyw29000, ty_Char) → new_compare18(vyw28000, vyw29000)
new_compare114(vyw28000, vyw29000, False, bh, ca) → GT
new_lt20(vyw28000, vyw29000, ty_Bool) → new_lt8(vyw28000, vyw29000)
new_esEs30(vyw18, vyw13, ty_Double) → new_esEs12(vyw18, vyw13)
new_esEs8(vyw28000, vyw29000, app(ty_Maybe, cd)) → new_esEs6(vyw28000, vyw29000, cd)
new_primCmpInt(Pos(Succ(vyw280000)), Pos(vyw29000)) → new_primCmpNat0(Succ(vyw280000), vyw29000)
new_ltEs20(vyw28002, vyw29002, ty_Ordering) → new_ltEs13(vyw28002, vyw29002)
new_esEs23(vyw28000, vyw29000, ty_@0) → new_esEs15(vyw28000, vyw29000)
new_primPlusNat0(Zero, vyw400100) → Succ(vyw400100)
new_ltEs5(vyw28001, vyw29001, app(ty_Ratio, df)) → new_ltEs11(vyw28001, vyw29001, df)
new_esEs8(vyw28000, vyw29000, app(ty_[], cb)) → new_esEs11(vyw28000, vyw29000, cb)
new_esEs19(vyw300, vyw4000, ty_Char) → new_esEs17(vyw300, vyw4000)
new_compare113(vyw28000, vyw29000, False) → GT
new_esEs19(vyw300, vyw4000, ty_Double) → new_esEs12(vyw300, vyw4000)
new_ltEs19(vyw2800, vyw2900, ty_Int) → new_ltEs6(vyw2800, vyw2900)
new_esEs25(vyw300, vyw4000, ty_@0) → new_esEs15(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, app(ty_[], ge)) → new_esEs11(vyw301, vyw4001, ge)
new_compare0(:(vyw28000, vyw28001), [], bae) → GT
new_lt20(vyw28000, vyw29000, ty_Int) → new_lt6(vyw28000, vyw29000)
new_compare28(vyw28000, vyw29000, True) → EQ
new_esEs26(vyw301, vyw4001, app(app(ty_Either, dde), ddf)) → new_esEs5(vyw301, vyw4001, dde, ddf)
new_lt8(vyw28000, vyw29000) → new_esEs14(new_compare10(vyw28000, vyw29000), LT)
new_primCmpInt(Pos(Succ(vyw280000)), Neg(vyw29000)) → GT
new_esEs22(vyw300, vyw4000, app(app(app(ty_@3, bge), bgf), bgg)) → new_esEs7(vyw300, vyw4000, bge, bgf, bgg)
new_esEs8(vyw28000, vyw29000, app(app(app(ty_@3, ce), cf), cg)) → new_esEs7(vyw28000, vyw29000, ce, cf, cg)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(app(ty_Either, ceb), cec)) → new_ltEs7(vyw28000, vyw29000, ceb, cec)
new_lt19(vyw28001, vyw29001, ty_Char) → new_lt17(vyw28001, vyw29001)
new_lt19(vyw28001, vyw29001, app(app(app(ty_@3, cba), cbb), cbc)) → new_lt14(vyw28001, vyw29001, cba, cbb, cbc)
new_compare115(vyw28000, vyw29000, False, ce, cf, cg) → GT
new_lt19(vyw28001, vyw29001, ty_Float) → new_lt16(vyw28001, vyw29001)
new_primMulInt(Pos(vyw3010), Pos(vyw40010)) → Pos(new_primMulNat0(vyw3010, vyw40010))
new_esEs21(vyw302, vyw4002, app(app(ty_@2, he), hf)) → new_esEs4(vyw302, vyw4002, he, hf)
new_lt4(vyw28000, vyw29000, ty_@0) → new_lt15(vyw28000, vyw29000)
new_compare19(Integer(vyw28000), Integer(vyw29000)) → new_primCmpInt(vyw28000, vyw29000)
new_esEs10(True, True) → True
new_esEs30(vyw18, vyw13, ty_Ordering) → new_esEs14(vyw18, vyw13)
new_esEs5(Right(vyw300), Left(vyw4000), chh, cge) → False
new_esEs5(Left(vyw300), Right(vyw4000), chh, cge) → False
new_lt4(vyw28000, vyw29000, ty_Float) → new_lt16(vyw28000, vyw29000)
new_primMulInt(Neg(vyw3010), Neg(vyw40010)) → Pos(new_primMulNat0(vyw3010, vyw40010))
new_ltEs5(vyw28001, vyw29001, app(ty_Maybe, dg)) → new_ltEs12(vyw28001, vyw29001, dg)
new_ltEs8(False, False) → True
new_primEqNat0(Succ(vyw3000), Zero) → False
new_primEqNat0(Zero, Succ(vyw40000)) → False
new_esEs21(vyw302, vyw4002, ty_Int) → new_esEs9(vyw302, vyw4002)
new_ltEs19(vyw2800, vyw2900, app(app(app(ty_@3, bfb), bfc), bfd)) → new_ltEs14(vyw2800, vyw2900, bfb, bfc, bfd)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(app(ty_Either, bcc), bcd), bcb) → new_ltEs7(vyw28000, vyw29000, bcc, bcd)
new_esEs25(vyw300, vyw4000, app(ty_Maybe, dbg)) → new_esEs6(vyw300, vyw4000, dbg)
new_esEs20(vyw301, vyw4001, ty_@0) → new_esEs15(vyw301, vyw4001)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_ltEs16(vyw2800, vyw2900) → new_not(new_esEs14(new_compare17(vyw2800, vyw2900), GT))
new_esEs25(vyw300, vyw4000, app(ty_[], dcb)) → new_esEs11(vyw300, vyw4000, dcb)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(app(app(ty_@3, bec), bed), bee)) → new_ltEs14(vyw28000, vyw29000, bec, bed, bee)
new_esEs22(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(ty_Maybe, beb)) → new_ltEs12(vyw28000, vyw29000, beb)
new_esEs26(vyw301, vyw4001, ty_Ordering) → new_esEs14(vyw301, vyw4001)
new_ltEs5(vyw28001, vyw29001, ty_Int) → new_ltEs6(vyw28001, vyw29001)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Char, bcb) → new_ltEs17(vyw28000, vyw29000)
new_esEs24(vyw28001, vyw29001, ty_Int) → new_esEs9(vyw28001, vyw29001)
new_lt4(vyw28000, vyw29000, ty_Int) → new_lt6(vyw28000, vyw29000)
new_esEs14(LT, EQ) → False
new_esEs14(EQ, LT) → False
new_esEs21(vyw302, vyw4002, ty_Char) → new_esEs17(vyw302, vyw4002)
new_primCmpInt(Neg(Zero), Neg(Succ(vyw290000))) → new_primCmpNat0(Succ(vyw290000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(vyw290000))) → GT
new_lt20(vyw28000, vyw29000, ty_Float) → new_lt16(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, ty_@0) → new_esEs15(vyw30, vyw400)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(app(app(ty_@3, dah), dba), dbb)) → new_esEs7(vyw300, vyw4000, dah, dba, dbb)
new_esEs27(vyw300, vyw4000, ty_Int) → new_esEs9(vyw300, vyw4000)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Integer, cge) → new_esEs18(vyw300, vyw4000)
new_esEs23(vyw28000, vyw29000, app(ty_[], bhd)) → new_esEs11(vyw28000, vyw29000, bhd)
new_compare26(vyw28000, vyw29000, False, ce, cf, cg) → new_compare115(vyw28000, vyw29000, new_ltEs14(vyw28000, vyw29000, ce, cf, cg), ce, cf, cg)
new_esEs6(Just(vyw300), Just(vyw4000), app(app(ty_Either, cfh), cga)) → new_esEs5(vyw300, vyw4000, cfh, cga)
new_lt4(vyw28000, vyw29000, ty_Ordering) → new_lt13(vyw28000, vyw29000)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Double, bcb) → new_ltEs10(vyw28000, vyw29000)
new_ltEs9(vyw2800, vyw2900, bae) → new_not(new_esEs14(new_compare0(vyw2800, vyw2900, bae), GT))
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Ordering, bcb) → new_ltEs13(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, ty_Bool) → new_esEs10(vyw30, vyw400)
new_esEs14(EQ, GT) → False
new_esEs14(GT, EQ) → False
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs24(vyw28001, vyw29001, app(app(app(ty_@3, cba), cbb), cbc)) → new_esEs7(vyw28001, vyw29001, cba, cbb, cbc)
new_compare17(Float(vyw28000, vyw28001), Float(vyw29000, vyw29001)) → new_compare8(new_sr(vyw28000, vyw29000), new_sr(vyw28001, vyw29001))
new_esEs5(Left(vyw300), Left(vyw4000), ty_Bool, cge) → new_esEs10(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, app(ty_Maybe, gb)) → new_esEs6(vyw301, vyw4001, gb)
new_compare13(vyw28000, vyw29000, cd) → new_compare25(vyw28000, vyw29000, new_esEs6(vyw28000, vyw29000, cd), cd)
new_lt19(vyw28001, vyw29001, ty_Ordering) → new_lt13(vyw28001, vyw29001)
new_ltEs13(GT, GT) → True
new_esEs24(vyw28001, vyw29001, ty_Double) → new_esEs12(vyw28001, vyw29001)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, app(app(ty_Either, bdf), bdg)) → new_ltEs7(vyw28000, vyw29000, bdf, bdg)
new_esEs15(@0, @0) → True
new_lt17(vyw28000, vyw29000) → new_esEs14(new_compare18(vyw28000, vyw29000), LT)
new_esEs13(:%(vyw300, vyw301), :%(vyw4000, vyw4001), dbc) → new_asAs(new_esEs27(vyw300, vyw4000, dbc), new_esEs28(vyw301, vyw4001, dbc))
new_asAs(False, vyw91) → False
new_esEs22(vyw300, vyw4000, ty_Double) → new_esEs12(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Integer) → new_ltEs18(vyw28000, vyw29000)
new_primMulInt(Pos(vyw3010), Neg(vyw40010)) → Neg(new_primMulNat0(vyw3010, vyw40010))
new_primMulInt(Neg(vyw3010), Pos(vyw40010)) → Neg(new_primMulNat0(vyw3010, vyw40010))
new_esEs6(Just(vyw300), Just(vyw4000), app(ty_[], cfg)) → new_esEs11(vyw300, vyw4000, cfg)
new_esEs22(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_primMulNat0(Succ(vyw30100), Zero) → Zero
new_primMulNat0(Zero, Succ(vyw400100)) → Zero
new_esEs21(vyw302, vyw4002, app(app(ty_Either, hh), baa)) → new_esEs5(vyw302, vyw4002, hh, baa)
new_esEs6(Just(vyw300), Just(vyw4000), app(ty_Maybe, cfd)) → new_esEs6(vyw300, vyw4000, cfd)
new_esEs19(vyw300, vyw4000, app(ty_[], fb)) → new_esEs11(vyw300, vyw4000, fb)
new_esEs23(vyw28000, vyw29000, ty_Int) → new_esEs9(vyw28000, vyw29000)
new_esEs29(vyw30, vyw400, ty_Char) → new_esEs17(vyw30, vyw400)
new_esEs30(vyw18, vyw13, app(ty_Ratio, ccf)) → new_esEs13(vyw18, vyw13, ccf)
new_esEs27(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_esEs20(vyw301, vyw4001, ty_Float) → new_esEs16(vyw301, vyw4001)
new_esEs18(Integer(vyw300), Integer(vyw4000)) → new_primEqInt(vyw300, vyw4000)
new_esEs6(Just(vyw300), Just(vyw4000), app(app(ty_@2, cfe), cff)) → new_esEs4(vyw300, vyw4000, cfe, cff)
new_lt19(vyw28001, vyw29001, app(ty_Maybe, cah)) → new_lt12(vyw28001, vyw29001, cah)
new_esEs23(vyw28000, vyw29000, app(ty_Maybe, bhf)) → new_esEs6(vyw28000, vyw29000, bhf)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Float, bcb) → new_ltEs16(vyw28000, vyw29000)
new_lt4(vyw28000, vyw29000, app(app(app(ty_@3, ce), cf), cg)) → new_lt14(vyw28000, vyw29000, ce, cf, cg)
new_esEs8(vyw28000, vyw29000, ty_Bool) → new_esEs10(vyw28000, vyw29000)
new_ltEs12(Nothing, Just(vyw29000), bfa) → True
new_ltEs7(Left(vyw28000), Left(vyw29000), app(ty_Maybe, bcg), bcb) → new_ltEs12(vyw28000, vyw29000, bcg)
new_esEs14(GT, GT) → True
new_esEs8(vyw28000, vyw29000, ty_Ordering) → new_esEs14(vyw28000, vyw29000)
new_esEs20(vyw301, vyw4001, app(app(ty_@2, gc), gd)) → new_esEs4(vyw301, vyw4001, gc, gd)
new_ltEs7(Left(vyw28000), Left(vyw29000), app(app(app(ty_@3, bch), bda), bdb), bcb) → new_ltEs14(vyw28000, vyw29000, bch, bda, bdb)
new_esEs30(vyw18, vyw13, app(app(ty_Either, cdc), cdd)) → new_esEs5(vyw18, vyw13, cdc, cdd)
new_esEs23(vyw28000, vyw29000, ty_Bool) → new_esEs10(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), ty_@0, cge) → new_esEs15(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Ordering) → new_ltEs13(vyw28000, vyw29000)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(ty_Maybe, dab)) → new_esEs6(vyw300, vyw4000, dab)
new_esEs22(vyw300, vyw4000, ty_Float) → new_esEs16(vyw300, vyw4000)
new_ltEs12(Just(vyw28000), Just(vyw29000), app(app(app(ty_@3, ceg), ceh), cfa)) → new_ltEs14(vyw28000, vyw29000, ceg, ceh, cfa)
new_esEs25(vyw300, vyw4000, app(app(app(ty_@3, dce), dcf), dcg)) → new_esEs7(vyw300, vyw4000, dce, dcf, dcg)
new_ltEs20(vyw28002, vyw29002, app(app(ty_Either, cbf), cbg)) → new_ltEs7(vyw28002, vyw29002, cbf, cbg)
new_compare12(:%(vyw28000, vyw28001), :%(vyw29000, vyw29001), ty_Int) → new_compare8(new_sr(vyw28000, vyw29001), new_sr(vyw29000, vyw28001))
new_compare25(Just(vyw2800), Just(vyw2900), False, beg) → new_compare112(vyw2800, vyw2900, new_ltEs19(vyw2800, vyw2900, beg), beg)
new_esEs30(vyw18, vyw13, ty_Bool) → new_esEs10(vyw18, vyw13)
new_esEs26(vyw301, vyw4001, ty_Integer) → new_esEs18(vyw301, vyw4001)
new_ltEs12(Just(vyw28000), Just(vyw29000), ty_Char) → new_ltEs17(vyw28000, vyw29000)
new_esEs5(Left(vyw300), Left(vyw4000), app(app(ty_Either, chc), chd), cge) → new_esEs5(vyw300, vyw4000, chc, chd)
new_compare18(Char(vyw28000), Char(vyw29000)) → new_primCmpNat0(vyw28000, vyw29000)
new_ltEs5(vyw28001, vyw29001, ty_Double) → new_ltEs10(vyw28001, vyw29001)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Float) → new_esEs16(vyw300, vyw4000)
new_esEs21(vyw302, vyw4002, ty_Double) → new_esEs12(vyw302, vyw4002)
new_esEs21(vyw302, vyw4002, app(ty_[], hg)) → new_esEs11(vyw302, vyw4002, hg)
new_esEs28(vyw301, vyw4001, ty_Int) → new_esEs9(vyw301, vyw4001)
new_esEs6(Just(vyw300), Just(vyw4000), ty_Integer) → new_esEs18(vyw300, vyw4000)
new_compare112(vyw84, vyw85, False, bef) → GT
new_esEs30(vyw18, vyw13, ty_Char) → new_esEs17(vyw18, vyw13)
new_ltEs13(LT, LT) → True
new_esEs23(vyw28000, vyw29000, ty_Double) → new_esEs12(vyw28000, vyw29000)
new_esEs20(vyw301, vyw4001, ty_Char) → new_esEs17(vyw301, vyw4001)
new_compare26(vyw28000, vyw29000, True, ce, cf, cg) → EQ
new_esEs6(Just(vyw300), Just(vyw4000), ty_@0) → new_esEs15(vyw300, vyw4000)
new_lt7(vyw28000, vyw29000, bh, ca) → new_esEs14(new_compare9(vyw28000, vyw29000, bh, ca), LT)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Integer, bcb) → new_ltEs18(vyw28000, vyw29000)
new_compare0([], :(vyw29000, vyw29001), bae) → LT
new_primPlusNat1(Zero, Zero) → Zero
new_ltEs5(vyw28001, vyw29001, app(app(ty_Either, dc), dd)) → new_ltEs7(vyw28001, vyw29001, dc, dd)
new_esEs24(vyw28001, vyw29001, ty_Float) → new_esEs16(vyw28001, vyw29001)
new_asAs(True, vyw91) → vyw91
new_esEs5(Right(vyw300), Right(vyw4000), chh, ty_Double) → new_esEs12(vyw300, vyw4000)
new_ltEs5(vyw28001, vyw29001, ty_Float) → new_ltEs16(vyw28001, vyw29001)
new_primMulNat0(Succ(vyw30100), Succ(vyw400100)) → new_primPlusNat0(new_primMulNat0(vyw30100, Succ(vyw400100)), vyw400100)
new_ltEs5(vyw28001, vyw29001, ty_Integer) → new_ltEs18(vyw28001, vyw29001)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Ordering) → new_ltEs13(vyw28000, vyw29000)
new_esEs10(False, True) → False
new_esEs10(True, False) → False
new_esEs14(LT, LT) → True
new_ltEs12(Just(vyw28000), Nothing, bfa) → False
new_lt16(vyw28000, vyw29000) → new_esEs14(new_compare17(vyw28000, vyw29000), LT)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Float, cge) → new_esEs16(vyw300, vyw4000)
new_esEs29(vyw30, vyw400, ty_Integer) → new_esEs18(vyw30, vyw400)
new_esEs20(vyw301, vyw4001, ty_Integer) → new_esEs18(vyw301, vyw4001)
new_compare6(vyw28000, vyw29000, app(ty_Maybe, bbd)) → new_compare13(vyw28000, vyw29000, bbd)
new_esEs25(vyw300, vyw4000, ty_Ordering) → new_esEs14(vyw300, vyw4000)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Float) → new_ltEs16(vyw28000, vyw29000)
new_esEs9(vyw30, vyw400) → new_primEqInt(vyw30, vyw400)
new_ltEs7(Left(vyw28000), Left(vyw29000), ty_Bool, bcb) → new_ltEs8(vyw28000, vyw29000)
new_esEs24(vyw28001, vyw29001, app(ty_Maybe, cah)) → new_esEs6(vyw28001, vyw29001, cah)
new_esEs21(vyw302, vyw4002, ty_Bool) → new_esEs10(vyw302, vyw4002)
new_ltEs20(vyw28002, vyw29002, ty_Int) → new_ltEs6(vyw28002, vyw29002)
new_lt10(vyw28000, vyw29000) → new_esEs14(new_compare11(vyw28000, vyw29000), LT)
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Integer) → new_ltEs18(vyw28000, vyw29000)
new_esEs19(vyw300, vyw4000, ty_Integer) → new_esEs18(vyw300, vyw4000)
new_ltEs5(vyw28001, vyw29001, ty_@0) → new_ltEs15(vyw28001, vyw29001)
new_esEs22(vyw300, vyw4000, app(app(ty_Either, bgc), bgd)) → new_esEs5(vyw300, vyw4000, bgc, bgd)
new_lt20(vyw28000, vyw29000, ty_Double) → new_lt10(vyw28000, vyw29000)
new_primCompAux00(vyw109, GT) → GT
new_esEs21(vyw302, vyw4002, ty_Float) → new_esEs16(vyw302, vyw4002)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_esEs19(vyw300, vyw4000, app(app(ty_@2, eh), fa)) → new_esEs4(vyw300, vyw4000, eh, fa)
new_ltEs10(vyw2800, vyw2900) → new_not(new_esEs14(new_compare11(vyw2800, vyw2900), GT))
new_lt20(vyw28000, vyw29000, app(ty_Maybe, bhf)) → new_lt12(vyw28000, vyw29000, bhf)
new_esEs5(Right(vyw300), Right(vyw4000), chh, app(ty_Ratio, daa)) → new_esEs13(vyw300, vyw4000, daa)
new_ltEs20(vyw28002, vyw29002, ty_Char) → new_ltEs17(vyw28002, vyw29002)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_esEs30(vyw18, vyw13, app(app(ty_@2, cch), cda)) → new_esEs4(vyw18, vyw13, cch, cda)
new_primCmpInt(Neg(Succ(vyw280000)), Pos(vyw29000)) → LT
new_ltEs7(Right(vyw28000), Right(vyw29000), bdc, ty_Int) → new_ltEs6(vyw28000, vyw29000)
new_compare11(Double(vyw28000, vyw28001), Double(vyw29000, vyw29001)) → new_compare8(new_sr(vyw28000, vyw29000), new_sr(vyw28001, vyw29001))
new_compare15(vyw28000, vyw29000, ce, cf, cg) → new_compare26(vyw28000, vyw29000, new_esEs7(vyw28000, vyw29000, ce, cf, cg), ce, cf, cg)
new_not(True) → False
new_ltEs19(vyw2800, vyw2900, ty_Ordering) → new_ltEs13(vyw2800, vyw2900)
new_esEs5(Left(vyw300), Left(vyw4000), ty_Char, cge) → new_esEs17(vyw300, vyw4000)
new_ltEs4(@2(vyw28000, vyw28001), @2(vyw29000, vyw29001), bd, be) → new_pePe(new_lt4(vyw28000, vyw29000, bd), new_asAs(new_esEs8(vyw28000, vyw29000, bd), new_ltEs5(vyw28001, vyw29001, be)))
new_compare6(vyw28000, vyw29000, app(app(ty_@2, baf), bag)) → new_compare7(vyw28000, vyw29000, baf, bag)
The set Q consists of the following terms:
new_compare6(x0, x1, app(app(ty_@2, x2), x3))
new_pePe(True, x0)
new_ltEs7(Left(x0), Left(x1), ty_Char, x2)
new_compare114(x0, x1, True, x2, x3)
new_esEs21(x0, x1, ty_Integer)
new_ltEs19(x0, x1, app(ty_[], x2))
new_compare6(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_@0)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs7(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs20(x0, x1, app(ty_Maybe, x2))
new_esEs25(x0, x1, ty_Integer)
new_esEs23(x0, x1, ty_Ordering)
new_esEs22(x0, x1, ty_Char)
new_esEs5(Right(x0), Right(x1), x2, ty_Int)
new_esEs14(EQ, GT)
new_esEs14(GT, EQ)
new_compare24(x0, x1, True, x2, x3)
new_ltEs7(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs7(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs21(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_Float)
new_ltEs12(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs5(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_primPlusNat1(Succ(x0), Succ(x1))
new_compare6(x0, x1, ty_Float)
new_esEs24(x0, x1, ty_Char)
new_ltEs15(x0, x1)
new_pePe(False, x0)
new_esEs8(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs25(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, ty_Integer)
new_lt4(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, ty_Float)
new_esEs26(x0, x1, ty_Float)
new_compare110(x0, x1, False, x2, x3)
new_esEs23(x0, x1, ty_Double)
new_esEs24(x0, x1, ty_Bool)
new_esEs9(x0, x1)
new_esEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Int)
new_compare25(Just(x0), Just(x1), False, x2)
new_esEs28(x0, x1, ty_Integer)
new_esEs30(x0, x1, ty_Char)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_primPlusNat1(Succ(x0), Zero)
new_ltEs12(Just(x0), Nothing, x1)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs20(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, app(ty_Maybe, x2))
new_esEs22(x0, x1, ty_Ordering)
new_esEs5(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_compare6(x0, x1, ty_Double)
new_ltEs18(x0, x1)
new_compare12(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs25(x0, x1, ty_Float)
new_esEs24(x0, x1, app(app(ty_@2, x2), x3))
new_lt9(x0, x1, x2)
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs21(x0, x1, ty_@0)
new_esEs24(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs8(True, True)
new_primCmpNat0(Succ(x0), Succ(x1))
new_ltEs19(x0, x1, ty_Int)
new_esEs6(Just(x0), Just(x1), app(ty_[], x2))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_esEs30(x0, x1, ty_Integer)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs21(x0, x1, app(app(ty_Either, x2), x3))
new_compare6(x0, x1, ty_Ordering)
new_esEs6(Just(x0), Nothing, x1)
new_lt20(x0, x1, ty_Char)
new_compare13(x0, x1, x2)
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_esEs5(Right(x0), Right(x1), x2, ty_Ordering)
new_compare12(:%(x0, x1), :%(x2, x3), ty_Int)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(Just(x0), Just(x1), ty_Char)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare28(x0, x1, True)
new_ltEs12(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs11([], :(x0, x1), x2)
new_ltEs12(Just(x0), Just(x1), ty_@0)
new_esEs14(LT, GT)
new_esEs14(GT, LT)
new_lt19(x0, x1, ty_Integer)
new_esEs29(x0, x1, ty_Double)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_asAs(True, x0)
new_esEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_ltEs12(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs12(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs5(x0, x1, ty_Double)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_primEqNat0(Zero, Zero)
new_esEs25(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_esEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Bool)
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs21(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, False)
new_primEqNat0(Succ(x0), Zero)
new_ltEs13(EQ, EQ)
new_lt20(x0, x1, app(ty_[], x2))
new_ltEs7(Right(x0), Right(x1), x2, ty_Double)
new_lt19(x0, x1, app(ty_[], x2))
new_esEs19(x0, x1, ty_Bool)
new_compare6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs7(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs27(x0, x1, ty_Int)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, ty_Integer)
new_esEs23(x0, x1, ty_@0)
new_ltEs10(x0, x1)
new_lt8(x0, x1)
new_primMulNat0(Zero, Zero)
new_lt13(x0, x1)
new_compare113(x0, x1, True)
new_esEs29(x0, x1, ty_Int)
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_esEs10(False, True)
new_esEs10(True, False)
new_esEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1, x2, x3)
new_esEs5(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primMulNat0(Zero, Succ(x0))
new_esEs25(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Bool)
new_esEs22(x0, x1, ty_Float)
new_esEs20(x0, x1, ty_Int)
new_esEs6(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs5(Right(x0), Right(x1), x2, ty_Float)
new_ltEs13(LT, EQ)
new_ltEs13(EQ, LT)
new_primPlusNat0(Succ(x0), x1)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs5(Left(x0), Left(x1), ty_Integer, x2)
new_esEs19(x0, x1, ty_Integer)
new_esEs22(x0, x1, ty_Int)
new_ltEs19(x0, x1, ty_Integer)
new_esEs19(x0, x1, ty_Ordering)
new_ltEs12(Just(x0), Just(x1), ty_Bool)
new_esEs26(x0, x1, ty_@0)
new_esEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_compare15(x0, x1, x2, x3, x4)
new_ltEs9(x0, x1, x2)
new_sr(x0, x1)
new_primCmpNat0(Zero, Succ(x0))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_esEs30(x0, x1, ty_Double)
new_esEs24(x0, x1, app(ty_[], x2))
new_lt4(x0, x1, ty_Double)
new_primEqNat0(Zero, Succ(x0))
new_esEs23(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_@0)
new_asAs(False, x0)
new_esEs24(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Integer)
new_compare0(:(x0, x1), [], x2)
new_ltEs6(x0, x1)
new_esEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs23(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Ordering)
new_primMulInt(Pos(x0), Pos(x1))
new_esEs24(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Char)
new_compare27(x0, x1, True, x2, x3)
new_esEs20(x0, x1, ty_@0)
new_esEs6(Nothing, Nothing, x0)
new_compare28(x0, x1, False)
new_esEs22(x0, x1, ty_@0)
new_esEs6(Just(x0), Just(x1), ty_Bool)
new_lt4(x0, x1, ty_Int)
new_ltEs7(Left(x0), Right(x1), x2, x3)
new_ltEs7(Right(x0), Left(x1), x2, x3)
new_compare26(x0, x1, True, x2, x3, x4)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_compare16(@0, @0)
new_esEs5(Right(x0), Right(x1), x2, ty_Char)
new_ltEs19(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(Double(x0, x1), Double(x2, x3))
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_compare17(Float(x0, x1), Float(x2, x3))
new_esEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs23(x0, x1, ty_Float)
new_esEs6(Just(x0), Just(x1), ty_@0)
new_esEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs12(Just(x0), Just(x1), ty_Double)
new_ltEs5(x0, x1, ty_Integer)
new_ltEs14(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_primPlusNat1(Zero, Zero)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs14(LT, LT)
new_esEs10(True, True)
new_esEs24(x0, x1, ty_Float)
new_esEs5(Left(x0), Left(x1), ty_Ordering, x2)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs19(x0, x1, ty_Int)
new_esEs22(x0, x1, ty_Double)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(ty_[], x2))
new_ltEs4(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs30(x0, x1, ty_Int)
new_esEs21(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_lt19(x0, x1, ty_@0)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_compare113(x0, x1, False)
new_compare6(x0, x1, ty_Integer)
new_esEs21(x0, x1, app(ty_Ratio, x2))
new_esEs22(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs5(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11([], [], x0)
new_esEs8(x0, x1, ty_@0)
new_esEs25(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_esEs6(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_primCompAux0(x0, x1, x2, x3)
new_esEs5(Right(x0), Right(x1), x2, ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Ordering)
new_lt19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_compare10(x0, x1)
new_esEs22(x0, x1, ty_Bool)
new_esEs27(x0, x1, ty_Integer)
new_ltEs7(Left(x0), Left(x1), ty_Int, x2)
new_esEs29(x0, x1, ty_Float)
new_esEs8(x0, x1, ty_Double)
new_lt20(x0, x1, ty_Integer)
new_ltEs13(EQ, GT)
new_ltEs13(GT, EQ)
new_esEs26(x0, x1, ty_Double)
new_esEs6(Just(x0), Just(x1), ty_Float)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_ltEs7(Left(x0), Left(x1), ty_Float, x2)
new_lt12(x0, x1, x2)
new_esEs11(:(x0, x1), :(x2, x3), x4)
new_esEs5(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs7(Left(x0), Left(x1), ty_Double, x2)
new_ltEs8(False, False)
new_lt20(x0, x1, ty_Double)
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_esEs21(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_[], x3))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_ltEs19(x0, x1, ty_Float)
new_ltEs7(Right(x0), Right(x1), x2, ty_Float)
new_ltEs19(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_Char)
new_esEs8(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primEqInt(Neg(Zero), Pos(Zero))
new_esEs8(x0, x1, ty_Float)
new_esEs23(x0, x1, app(ty_[], x2))
new_ltEs8(False, True)
new_ltEs8(True, False)
new_ltEs12(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs7(Right(x0), Right(x1), x2, ty_Char)
new_lt4(x0, x1, ty_Bool)
new_compare115(x0, x1, True, x2, x3, x4)
new_ltEs12(Just(x0), Just(x1), ty_Int)
new_compare19(Integer(x0), Integer(x1))
new_esEs25(x0, x1, ty_Char)
new_compare9(x0, x1, x2, x3)
new_lt18(x0, x1)
new_ltEs13(LT, GT)
new_ltEs13(GT, LT)
new_primCompAux00(x0, EQ)
new_esEs21(x0, x1, ty_Double)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs6(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_primEqInt(Neg(Zero), Neg(Zero))
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_sr0(Integer(x0), Integer(x1))
new_compare110(x0, x1, True, x2, x3)
new_ltEs19(x0, x1, ty_Char)
new_lt4(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_Double)
new_compare18(Char(x0), Char(x1))
new_esEs8(x0, x1, ty_Bool)
new_ltEs5(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), ty_Ordering)
new_esEs20(x0, x1, ty_Bool)
new_esEs6(Just(x0), Just(x1), ty_Integer)
new_compare8(x0, x1)
new_compare7(x0, x1, x2, x3)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs12(Just(x0), Just(x1), ty_Float)
new_ltEs19(x0, x1, ty_@0)
new_compare0([], :(x0, x1), x2)
new_ltEs7(Left(x0), Left(x1), ty_Integer, x2)
new_primCompAux00(x0, LT)
new_esEs5(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_lt17(x0, x1)
new_lt4(x0, x1, app(app(ty_@2, x2), x3))
new_esEs5(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs18(Integer(x0), Integer(x1))
new_lt20(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_lt4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs7(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs7(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs21(x0, x1, app(ty_[], x2))
new_primMulNat0(Succ(x0), Succ(x1))
new_esEs17(Char(x0), Char(x1))
new_esEs19(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_compare26(x0, x1, False, x2, x3, x4)
new_esEs19(x0, x1, app(ty_[], x2))
new_lt6(x0, x1)
new_lt19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Bool)
new_lt4(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, ty_Int)
new_ltEs7(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs5(Right(x0), Right(x1), x2, app(ty_[], x3))
new_lt19(x0, x1, ty_Ordering)
new_esEs23(x0, x1, ty_Int)
new_esEs24(x0, x1, app(ty_Ratio, x2))
new_esEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs5(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs7(Left(x0), Left(x1), ty_@0, x2)
new_esEs5(Left(x0), Right(x1), x2, x3)
new_esEs5(Right(x0), Left(x1), x2, x3)
new_lt19(x0, x1, ty_Char)
new_esEs21(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, ty_Ordering)
new_ltEs7(Right(x0), Right(x1), x2, ty_Bool)
new_esEs23(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(Nothing, Just(x0), x1)
new_primCmpNat0(Zero, Zero)
new_esEs6(Just(x0), Just(x1), app(ty_Maybe, x2))
new_lt4(x0, x1, ty_Char)
new_ltEs7(Right(x0), Right(x1), x2, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Bool, x2)
new_esEs10(False, False)
new_compare112(x0, x1, True, x2)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs19(x0, x1, ty_Char)
new_primPlusNat1(Zero, Succ(x0))
new_lt20(x0, x1, ty_Int)
new_ltEs13(LT, LT)
new_esEs5(Left(x0), Left(x1), ty_Int, x2)
new_esEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_lt19(x0, x1, ty_Bool)
new_esEs15(@0, @0)
new_esEs5(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs30(x0, x1, ty_Ordering)
new_esEs22(x0, x1, ty_Integer)
new_esEs29(x0, x1, ty_Char)
new_compare6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Just(x0), Just(x1), ty_Char)
new_esEs6(Just(x0), Just(x1), ty_Double)
new_esEs30(x0, x1, ty_Float)
new_compare24(x0, x1, False, x2, x3)
new_ltEs7(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs12(Nothing, Nothing, x0)
new_esEs25(x0, x1, ty_Bool)
new_primCmpNat0(Succ(x0), Zero)
new_compare6(x0, x1, app(ty_Maybe, x2))
new_ltEs12(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_compare25(Just(x0), Nothing, False, x1)
new_esEs5(Right(x0), Right(x1), x2, ty_Integer)
new_lt19(x0, x1, ty_Double)
new_ltEs5(x0, x1, ty_Int)
new_ltEs13(GT, GT)
new_ltEs7(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs19(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs16(Float(x0, x1), Float(x2, x3))
new_esEs11(:(x0, x1), [], x2)
new_lt14(x0, x1, x2, x3, x4)
new_esEs24(x0, x1, ty_@0)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_lt11(x0, x1, x2)
new_esEs22(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_@0)
new_esEs25(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(x0, x1)
new_not(True)
new_lt19(x0, x1, ty_Float)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_compare23(x0, x1, False)
new_ltEs11(x0, x1, x2)
new_ltEs5(x0, x1, ty_Ordering)
new_ltEs7(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_lt4(x0, x1, ty_Ordering)
new_compare27(x0, x1, False, x2, x3)
new_esEs20(x0, x1, app(ty_[], x2))
new_esEs24(x0, x1, ty_Ordering)
new_esEs22(x0, x1, app(app(ty_Either, x2), x3))
new_lt4(x0, x1, ty_@0)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_primCompAux00(x0, GT)
new_esEs23(x0, x1, ty_Integer)
new_lt15(x0, x1)
new_esEs23(x0, x1, app(ty_Maybe, x2))
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_esEs25(x0, x1, app(ty_[], x2))
new_esEs8(x0, x1, ty_Integer)
new_esEs20(x0, x1, ty_Double)
new_esEs25(x0, x1, ty_@0)
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs25(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, True)
new_compare6(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Double, x2)
new_ltEs17(x0, x1)
new_lt7(x0, x1, x2, x3)
new_esEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Nothing, Just(x0), x1)
new_esEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs12(Just(x0), Just(x1), ty_Integer)
new_esEs25(x0, x1, app(app(ty_@2, x2), x3))
new_esEs14(EQ, LT)
new_esEs14(LT, EQ)
new_esEs22(x0, x1, app(ty_[], x2))
new_esEs20(x0, x1, app(app(ty_@2, x2), x3))
new_compare6(x0, x1, ty_Int)
new_esEs5(Left(x0), Left(x1), ty_Float, x2)
new_esEs22(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Ordering)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_esEs5(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_compare23(x0, x1, True)
new_compare115(x0, x1, False, x2, x3, x4)
new_esEs5(Left(x0), Left(x1), ty_@0, x2)
new_esEs14(GT, GT)
new_ltEs16(x0, x1)
new_compare25(x0, x1, True, x2)
new_esEs19(x0, x1, ty_@0)
new_esEs6(Just(x0), Just(x1), ty_Int)
new_esEs19(x0, x1, ty_Float)
new_lt4(x0, x1, ty_Float)
new_compare11(Double(x0, x1), Double(x2, x3))
new_esEs20(x0, x1, ty_Char)
new_esEs7(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt19(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, ty_Char)
new_esEs24(x0, x1, app(app(ty_Either, x2), x3))
new_compare114(x0, x1, False, x2, x3)
new_esEs25(x0, x1, ty_Double)
new_compare6(x0, x1, app(ty_[], x2))
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs14(EQ, EQ)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_compare6(x0, x1, app(ty_Ratio, x2))
new_compare25(Nothing, Just(x0), False, x1)
new_compare6(x0, x1, ty_@0)
new_lt19(x0, x1, app(ty_Ratio, x2))
new_ltEs12(Just(x0), Just(x1), ty_Ordering)
new_esEs20(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_primEqNat0(Succ(x0), Succ(x1))
new_primEqInt(Pos(Zero), Pos(Zero))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_lt19(x0, x1, ty_Int)
new_compare112(x0, x1, False, x2)
new_ltEs7(Left(x0), Left(x1), ty_Bool, x2)
new_esEs5(Left(x0), Left(x1), ty_Char, x2)
new_esEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Ordering)
new_esEs24(x0, x1, app(ty_Maybe, x2))
new_compare25(Nothing, Nothing, False, x0)
new_lt16(x0, x1)
new_esEs21(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare0(:(x0, x1), :(x2, x3), x4)
new_esEs5(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs7(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_ltEs5(x0, x1, ty_@0)
new_esEs5(Right(x0), Right(x1), x2, ty_@0)
new_primMulNat0(Succ(x0), Zero)
new_compare0([], [], x0)
new_primPlusNat0(Zero, x0)
new_esEs5(Right(x0), Right(x1), x2, ty_Bool)
new_lt20(x0, x1, ty_Float)
new_lt10(x0, x1)
new_ltEs7(Right(x0), Right(x1), x2, ty_@0)
new_ltEs20(x0, x1, ty_Float)
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem. From the DPs we obtained the following set of size-change graphs:
- new_elemFM00(Branch(Just(vyw400), vyw41, vyw42, vyw43, vyw44), Just(vyw30), h, ba) → new_elemFM03(vyw400, vyw41, vyw42, vyw43, vyw44, vyw30, new_esEs14(new_compare25(Just(vyw30), Just(vyw400), new_esEs29(vyw30, vyw400, ba), ba), LT), h, ba)
The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 1 > 4, 1 > 5, 2 > 6, 3 >= 8, 4 >= 9
- new_elemFM00(Branch(Nothing, vyw41, vyw42, vyw43, vyw44), Just(vyw30), h, ba) → new_elemFM02(vyw41, vyw42, vyw43, vyw44, vyw30, new_esEs14(new_compare25(Just(vyw30), Nothing, False, ba), LT), h, ba)
The graph contains the following edges 1 > 1, 1 > 2, 1 > 3, 1 > 4, 2 > 5, 3 >= 7, 4 >= 8
- new_elemFM03(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, True, bb, bc) → new_elemFM00(vyw16, Just(vyw18), bb, bc)
The graph contains the following edges 4 >= 1, 8 >= 3, 9 >= 4
- new_elemFM03(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, False, bb, bc) → new_elemFM06(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, new_esEs14(new_compare25(Just(vyw18), Just(vyw13), new_esEs30(vyw18, vyw13, bc), bc), GT), bb, bc)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 6 >= 6, 8 >= 8, 9 >= 9
- new_elemFM02(vyw41, vyw42, vyw43, vyw44, vyw30, False, h, ba) → new_elemFM05(vyw41, vyw42, vyw43, vyw44, vyw30, new_esEs14(new_compare25(Just(vyw30), Nothing, False, ba), GT), h, ba)
The graph contains the following edges 1 >= 1, 2 >= 2, 3 >= 3, 4 >= 4, 5 >= 5, 7 >= 7, 8 >= 8
- new_elemFM06(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, True, bb, bc) → new_elemFM00(vyw17, Just(vyw18), bb, bc)
The graph contains the following edges 5 >= 1, 8 >= 3, 9 >= 4
- new_elemFM02(vyw41, vyw42, vyw43, vyw44, vyw30, True, h, ba) → new_elemFM00(vyw43, Just(vyw30), h, ba)
The graph contains the following edges 3 >= 1, 7 >= 3, 8 >= 4
- new_elemFM05(vyw41, vyw42, vyw43, vyw44, vyw30, True, h, ba) → new_elemFM00(vyw44, Just(vyw30), h, ba)
The graph contains the following edges 4 >= 1, 7 >= 3, 8 >= 4